如何在Android中进行位图压缩后保存Exif数据

9
拍完照片后,我会使用相机意图压缩位图以减小文件大小。问题是,在压缩后,所有EXIF数据都会丢失。我没有问题获取原始的EXIF数据,但是,如何将这个压缩后的文件夹中的EXIF数据加入到byte数组中呢?
(我的猜测是将byte数组创建为一个位图,然后添加旧的EXIF数据,之后再次添加到byte数组中,但这是一个移动应用程序,我正在拍摄大量的图片,所以我不想浪费内存)
这里是我的代码,其中我压缩了位图并保存到字节数组输出流中:
myBitmapImage.compress(Bitmap.CompressFormat.JPEG, 75, outputstream);//Losing EXIF data here
byte[] ba = outputstream.toByteArray(); // How to add EXIF data here ?
1个回答

0

我找到了一种方法,可以在位图压缩后保存Exif数据,因此如果有人遇到这篇文章,我会在这里发布。

您可以使用Apache的tiff导入和ExifTagConstants来将EXIF数据添加回字节数组图像:
org.apache.sanselan.formats.tiff.constants.TagInfo org.apache.sanselan.formats.tiff.constants.ExifTagConstants


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