iOS Swift无法访问存储照片上的EXIF数据
我需要在设备照片库中获取图片的位置。为此,我尝试加载图像的Exif数据。 这是我的代码:iOS Swift无法访问存储照片上的EXIF数据,ios,iphone,swift,ipad,Ios,Iphone,Swift,Ipad,我需要在设备照片库中获取图片的位置。为此,我尝试加载图像的Exif数据。 这是我的代码: import ImageIO func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { let image = info[UIImagePickerControllerOriginalImage] as? U
import ImageIO
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
let image = info[UIImagePickerControllerOriginalImage] as? UIImage
let ciImage = CIImage(image: image!)
let imageProperties = CGImageSourceCopyPropertiesAtIndex(ciImage as! CGImageSource, 0, nil) as Dictionary?
if let dict = imageProperties as? [String: Any] {
print(dict)
}
}
当我尝试在设备上运行代码时,应用程序崩溃。
我想问题出在演员阵容上,我试着做了一些操作,但我无法将
cImageSource
类型中的UIImage
转换为cImageSource
。你不能将CIImage
(或UIImage
)转换为cImageSource
。要创建CGImageSource
do,请执行以下操作:
guard let imageData = UIImageJPEGRepresentation(uiImage, 1)
else { fatalError("Error getting image data") }
guard let imageSource = CGImageSourceCreateWithData(imageData as CFData, nil)
else { fatalError("Error creating image source") }
let properties = CGImageSourceCopyPropertiesAtIndex(imageSource, 0, nil)
uiimagejpegresentation
以JPEG图像的形式返回图像,因此无论uiImage
最初采用何种格式