如何在保存在相机胶卷上的图像上添加图像方向exif元数据信息?

时间:2009-09-08 10:45:37

标签: iphone iphone-sdk-3.0

在使用iphone相机拍摄照片并将其保存到相机胶卷后,我看到最终结果是在没有方向信息的情况下保存。

当iPhone读取这些图片时,它会显示orientation =“0”,即“使用右侧的iphone按钮拍摄”,这会让所有人感到困惑。

如何在进入相机胶卷的照片上保存方向元数据?

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

取决于文件格式:

如果使用UIImageJPEGRepresentation()保存,则方向将正确保存在exif数据中。如果您使用exif方向数据加载JPEG文件,您将获得一个UIImage,其中包含imageOrientation和原始CGImage数据(未旋转)。

如果使用UIImagePNGRepresentation()进行保存,则不会将方向保存在exif数据中(或任何位置)。如果你加载带有exif方向数据的png,那么它会预先旋转CGImage数据,并且总是给你一个带有imageOrientation为“UIImageOrientationUp”的UIImage。

我从各种帖子和实验中找到了这个。

因此,显示PNG或JPEG UIImages的工作方式相同,但是数据的混乱程度则非常不同。

答案 1 :(得分:1)

如果我没记错的话,唯一的办法就是自己渲染处理过的图像,然后保存。