答案 0 :(得分:4)
嘿,你不需要调整图像大小。
答案 1 :(得分:0)
使用内容模式拟合图像是一种选择,但如果您想裁剪或调整图像大小或压缩图像,请检查以下代码。
像let imageData = image.compressImage(rate: 0.5)
一样调用,然后如果需要,您可以提供数据来写入图像。
func compressImage(rate: CGFloat) -> Data? {
return UIImageJPEGRepresentation(self, rate)
}
或者如果您想裁剪图像,
func croppedImage(_ bound: CGRect) -> UIImage? {
guard self.size.width > bound.origin.x else {
print("X coordinate is larger than the image width")
return nil
}
guard self.size.height > bound.origin.y else {
print("Y coordinate is larger than the image height")
return nil
}
let scaledBounds: CGRect = CGRect(x: bound.x * self.scale, y: bound.y * self.scale, width: bound.w * self.scale, height: bound.h * self.scale)
let imageRef = self.cgImage?.cropping(to: scaledBounds)
let croppedImage: UIImage = UIImage(cgImage: imageRef!, scale: self.scale, orientation: UIImageOrientation.up)
return croppedImage
}
确保将上述方法添加到UIImage Extension。
答案 2 :(得分:0)