【发布时间】:2017-12-26 18:06:30
【问题描述】:
我正在构建一个应用程序,允许您将图像从您的库上传到服务器。该服务器本质上用作图像存储库。因此,绝对有必要将其存储为原始图像格式:JPG、PNG 或 GIF。 IE。如果 PNG 图像具有透明度,必须保留,则不能简单地将其转换为 JPG。
我使用 UIImagePickerControllerReferenceURL 获取图像格式:
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
let selectedImage = info[UIImagePickerControllerEditedImage] as! UIImage
let assetPath = info[UIImagePickerControllerReferenceURL] as! NSURL
if (assetPath.absoluteString?.hasSuffix("JPG"))! {
print("JPG")
}
else if (assetPath.absoluteString?.hasSuffix("PNG"))! {
print("PNG")
}
else if (assetPath.absoluteString?.hasSuffix("GIF"))! {
print("GIF")
}
else {
print("Unknown")
}
self.dismiss(animated: true, completion: nil)
self.showImageFieldModal(selectedImage: selectedImage)
}
但 UIImagePickerControllerReferenceURL 在 iOS11 中已被弃用。它建议使用 UIImagePickerControllerPHAsset,但这不是 URL。我不确定我应该用它作为 PHAsset 对象做什么......
【问题讨论】:
-
iOS11可以使用原图url键
UIImagePickerControllerImageURL