转换为字节后,图像尺寸变小了

3

在我的Android应用中,我想将图像转换为字节数组,并对其进行编码以便可以保存到数据库中。但是,在压缩图像后,它的大小变得太小了... 我想保持原始大小,请帮帮我。

  final Bitmap image=(images.get(position));

ByteArrayOutputStream bytes = new ByteArrayOutputStream(); 
                image.compress(Bitmap.CompressFormat.PNG, 100, bytes);

                byte[] b = bytes.toByteArray();
                 encodedImageString = Base64.encodeToString(b, Base64.DEFAULT);

删除 image.compress() 语句。 - Harshit Rathi
以kb为单位还是以宽度x高度为单位? - Jeffrey Klardie
哦,兄弟,那我去掉它之后该怎么转换成字节? - user2768215
以KB为单位的大小@jeffrey...我如何在此处转换为字节,而不使用image.compress? - user2768215
1
图像 s 位图类型...帖子已编辑..谢谢 - user2768215
1个回答

0

您可以使用以下内容将其存储在数据库中而不进行压缩:

Bitmap bitmap; // obtain bitmap object
int size = bitmap.getRowBytes() * bitmap.getHeight(); 
ByteBuffer b = ByteBuffer.allocate(size); 
bitmap.copyPixelsToBuffer(b); 
byte[] bytes = new byte[size];
b.get(bytes, 0, bytes.length);

然后您可以将字节存储在数据库中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接