如何在iOS中保存EXIF元数据?

时间:2012-01-23 13:21:12

标签: objective-c ios uiimagepickercontroller exif alassetslibrary

我正在制作相机应用程序。

使用UIImagePickerController,我可以拍照 然后我想用Exif元数据保存这张图片

我用GPS元数据实现了保存图片 使用ALAssetsLibrary

ALAssetsLibrary* library = [[ALAssetsLibrary alloc] init];
[library writeImageToSavedPhotosAlbum:[image CGImage] metadata:metadata completionBlock:compBlock];
[library release];

我使用了这种方法,元数据包含GPSDictionary。

像这样,我想保存包含快门速度,白平衡,日期时间等的Exif数据。
但我不知道如何获取这些数据。

是否可以从相机获取这些数据? (不是相机胶卷)

3 个答案:

答案 0 :(得分:1)

UIImagePickerController未向您提供相机的位置。你必须

  • 在应用中添加CLLocationManager。发起/委托给self
  • 致电startUpdatingLocation
  • -(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
  • newLocation获取您的位置。

现在,如果要将图像保存到照片库,可以使用https://github.com/gpambrozio/GusUtils

可以找到更多解释:http://blog.codecropper.com/2011/05/adding-metadata-to-ios-images-the-easy-way/

答案 1 :(得分:0)

在此answer我发布了。

  

您可以通过电话

获取文件/资产的Exif信息      

[资产元数据]

     

我发现的参考文献在这里   sarofox.alasset-image-metadata该页面还显示了如何获取   个别财产......

答案 2 :(得分:0)

请参阅Apple的AVCamDemo示例应用程序。它显示了当您提到的值发生更改时如何注册更新。但是这使用AVCaptureSession和AVCaptureDeviceInput来访问这些值。然后你必须命令设备拍照。