내 sdcard에 저장된 이미지의 크기를 조정하려고 할 때 원래 색상이 변경된 곳을 발견했습니다. 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
난 너의 PNG 차이가 실제로 보이지 않는다 – schwiz
FWIW, 나는 두번째의 차이점을 처음으로 비교했다. :) –