2012年11月13日 星期二

ImageIO 輸出圖檔時的顏色問題

今天發現一個 BUG,當圖片用 PNG 檔時,用程式產生的縮圖顏色會很詭異
經過了一些簡單的測試,初步發現顏色有問題的都是背景有大量白色的圖片
後來就找到 [1] 的討論,其中回應是說因為 JPEG 本身沒有透明度設定
因此當遇到圖片是非 JPEG,但輸出檔案時卻指定為 JPEG,這時產生的檔案就會有問題。

要解決這個問題,一種是用 ImageIO 輸出時不要改變輸出的檔案類型,沒有轉檔就不會有圖片不相容的問題 XD
另一種就是參考 [1] 討論中的各種方法,基本上好像概念都是對透明的東西全部轉換成白色或者某個指定的顏色。

參考資料:
1、Converting transparent gif / png to jpeg using java

沒有留言: