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

时间:2014-05-20 14:09:49

标签: android exif android-camera-intent android-bitmap

使用相机意图拍摄照片后,我压缩位图以降低文件大小。问题是压缩后,它会丢失所有EXIF数据。我在检索原始EXIF数据时没有问题,但是,如何在压缩后将这个EXIFF数据添加到字节数组中?

(我的猜测是取字节数组并创建一个位图,然后添加旧的EXIF数据,然后再添加到字节数组,但这是一个移动应用程序,我拍了很多图像所以我不想浪费记忆力)

这是我压缩位图并保存到字节数组输出流的代码:

myBitmapImage.compress(Bitmap.CompressFormat.JPEG, 75, outputstream);//Losing EXIF data here
byte[] ba = outputstream.toByteArray(); // How to add EXIF data here ?

1 个答案:

答案 0 :(得分:0)

我找到了一种方法,可以在位图压缩后保存Exif数据,因此如果有人遇到此帖子,可以将其发布到此处。

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