没有压缩的byteArray位图

时间:2016-02-11 10:21:51

标签: android bitmap compression byte

我知道下面的代码

Bitmap photo = (Bitmap) data.getExtras().get("data");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
photo.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();

但问题是这段代码会降低图像质量以至于无法识别我怎样才能避免

photo.compress(Bitmap.CompressFormat.PNG,100, stream);

2 个答案:

答案 0 :(得分:0)

您可以使用CompressFormat.PNG,其中压缩质量并不重要,它始终无损,如documentation

中所述

答案 1 :(得分:0)

 array = new byte[w*h*4];
 Buffer dst = ByteBuffer.wrap(array);
 bmp.copyPixelsToBuffer(dst);