【问题标题】:How to get image metadata in iOS 9 using Photos Framework如何使用照片框架在 iOS 9 中获取图像元数据
【发布时间】:2016-07-03 08:16:46
【问题描述】:
我想在 Swift 中使用 UIImagePickerController 显示图像元数据。
其中图像是从图库中选择的,并将与 PixelHeight、PixelWidth、PixelXDimension、PixelYDimension、Coordinates、Size、Date Created 和 Imagename 等元数据一起显示在 imageView 中。
【问题讨论】:
标签:
ios
swift
ios9
photosframework
【解决方案1】:
首先,您可以从 UIImagePickerController 获取 info[UIImagePickerControllerReferenceURL]。然后您可以执行以下操作:
let assetURL = info[UIImagePickerControllerReferenceURL] as! NSURL
let asset = PHAsset.fetchAssetsWithALAssetURLs([assetURL], options: nil)
guard let result = asset.firstObject where result is PHAsset else {
return
}
let imageManager = PHImageManager.defaultManager()
imageManager.requestImageDataForAsset(result as! PHAsset, options: nil, resultHandler:{
(data, responseString, imageOriet, info) -> Void in
let imageData: NSData = data!
if let imageSource = CGImageSourceCreateWithData(imageData, nil) {
let imageProperties = CGImageSourceCopyPropertiesAtIndex(imageSource, 0, nil)! as NSDictionary
//now you have got meta data in imageProperties, you can display PixelHeight, PixelWidth, etc.
}
})