gpt4 book ai didi

android - 使用 ExifInterface 设置图像方向

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:32:52 24 4
gpt4 key购买 nike

Camera.Parameters 中的

setRotation 方法 并不适用于所有设备。有人建议手动更改EXIF信息来解决问题。你能给我一个简短的例子,说明如何使用 ExifInterface 设置 exif 信息,从而将图像方向设置为纵向吗?

private int savePicture(byte[] data)
{
File pictureFile = getOutputMediaFile();
if (pictureFile == null)
return FILE_CREATION_ERROR;

try {
FileOutputStream fos = new FileOutputStream(pictureFile);
fos.write(data);
fos.close();
} catch (FileNotFoundException e) {
return FILE_NOT_FOUND;
} catch (IOException e) {
return ACCESSING_FILE_ERROR;
}

return OKAY;
}

我试过这个:

    try {
ExifInterface exifi = new ExifInterface(pictureFile.getAbsolutePath());
exifi.setAttribute(ExifInterface.TAG_ORIENTATION, String.valueOf(ExifInterface.ORIENTATION_ROTATE_90));
exifi.saveAttributes();
} catch (IOException e) {
Log.e(TAG, "Exif error");
}

但是当我可视化来自 android 画廊的图片时,没有任何变化。

最佳答案

对于那些真正想要将这些 EXIF 信息写出来的人,这里有一些代码:

ExifInterface exifInterface = new ExifInterface(someFile.getPath());
exifInterface.setAttribute(ExifInterface.TAG_ORIENTATION,
String.valueOf(orientation));
exifInterface.saveAttributes();

orientation 是标准方向之一,即 ExifInterface.ORIENTATION_ROTATE_{90,180,270}

关于android - 使用 ExifInterface 设置图像方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19753912/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com