試圖調整存儲在我的SD卡上的圖像大小,我注意到原來的顏色被改變了。它接縫BitmapFactory.decodeFile是可以響應的。這裏是一個演示代碼:Android不尊重色彩!
private void testImage() throws Exception{
BitmapFactory.Options o = new BitmapFactory.Options();
o.inDither = false;
o.inPreferredConfig = Bitmap.Config.ARGB_8888;
o.inScaled = false;
Bitmap b = BitmapFactory.decodeFile("/sdcard/test/original.jpg", o);
b.compress(Bitmap.CompressFormat.JPEG, 100, new FileOutputStream("/sdcard/test/result.jpg"));
b.compress(Bitmap.CompressFormat.PNG, 100, new FileOutputStream("/sdcard/test/result.png"));
}
所得的圖象(original.jpg,result.jpg,result.png):
已經可以看到,男孩的皮膚在2個結果圖像上有點綠色。任何提示解決這個問題?
FWIW,這三個圖像看起來和我完全一樣。 – CommonsWare 2010-12-15 15:21:14
我真的沒有看到你的png – schwiz 2010-12-15 15:22:09
FWIW有什麼不同,我看到第二個和第一個相比有所不同:) – 2010-12-15 15:35:59