我将位图转换为字节数组:
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
例如,我的位图213x350 = 74550
像素,
所以length byteArray 74550*4 = 298200
。
但是byteArray.length returned 57+ thousand
。
有什么问题?
答案 0 :(得分:0)
您的位图是213x350像素,但您的字节数组包含压缩的PNG图像数据,每个像素不使用4个字节。在压缩数据时,PNG文件的总大小会更小。
要直观地看到它,只需打开任何图形编辑器(例如gimp)并创建一个213x350像素的新图像。然后将此图像另存为PNG文件,并查看其大小。