Я использую метод compress()
Bitmap для сжатия изображений с помощью следующего кода:
ByteArrayOutputStream baos;
Bitmap img = BitmapFactory.decodeFile(imgs[i].getAbsolutePath());
img.compress(Bitmap.CompressFormat.JPEG, compFactor, baos);
byte[] compImgBytes;
compImgBytes = baos.toByteArray();
OutputStream out1 = new BufferedOutputStream(new FileOutputStream(
new File(dir.getString("dir", null) + File.separator +
String.valueOf(imgsName) + ".jpg")));
out1.write(compImgBytes);
Проблема в том, что когда я использую 100 в качестве коэффициента сжатия (compFactor = 100
) для этого кода, размер результирующего изображения больше, чем размер сжимаемого изображения. Все, что я пытался сделать, это сжать изображение с максимальным качеством в соответствии с документацией Android для класса Bitmap.
Почему размер результирующего изображения больше размера исходного изображения? Я что-то упускаю?