我的应用程序的一个核心功能是用户可以使用自己的图像。 但图像大小应限制在一定的大小。例如,不允许用户在imageView中加载全景图片。限制这种情况的最佳方式是什么?
我应该在imagePickerController之后做一个if语句吗?什么是一个很好的最大尺寸?
答案 0 :(得分:1)
您可以检查image.size
属性,然后针对该属性执行计算,以检查是否过大或不支持的比率。
例如,全景图像往往具有2,3或甚至4:1的宽高比,这使得它们易于检测。
答案 1 :(得分:1)
您还可以添加UIImage扩展名,以便在用户选择后调整图像大小。
False
用法:
extension UIImage {
func resizeImage(_ targetSize: CGSize) -> UIImage {
// This is the rect that we've calculated out and this is what is actually used below
let rect = CGRect(x: 0, y: 0, width: targetSize.width, height: targetSize.height)
// Actually do the resizing to the rect using the ImageContext stuff
UIGraphicsBeginImageContextWithOptions(targetSize, false, 1.0)
self.draw(in: rect)
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return newImage!
}
}
最佳尺寸可能取决于您的要求以及您遇到崩溃的原因。