2016-07-03 13 views
3

Ich möchte Bildmetadaten mithilfe von UIImagePickerController in Swift anzeigen. wobei das Bild aus der Galerie ausgewählt wurde und zusammen mit den Metadaten wie PixelHeight, PixelWidth, PixelXDimension, PixelYDimension, Koordinaten, Größe, Erstellungsdatum und Bildname in der Bildansicht angezeigt würde.So erhalten Sie Bildmetadaten in iOS 9 mit Photos Framework

+2

Mögliche Duplikat [Erste Metadaten in swift von UIImagePickerController] (http://stackoverflow.com/questions/26391158/getting-metadata-in-swift-by-uiimagepickercontroller) – Scriptable

Antwort

5

Zuerst können Sie info [UIImagePickerControllerReferenceURL] von UIImagePickerController erhalten. Dann können Sie Dinge tun, wie folgt aus:

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. 
     } 
    })