我用这个GitHub Repository制作了一个可以将图像裁剪成不规则形状的图像裁剪器。截至目前,我已经实现了此存储库,并且能够以链接中所示的不规则形状裁剪UIImages。
在当前状态下,裁剪器使用UIBezierPath和CAShapeLayer来获取普通(矩形)UIImage并剪切出未包含在形状中的部分。由于我试图将这个UIImage存储在数据库中,我需要将它存储为UIImage,而不必存储裁剪图像的CAShapeLayer和UIBezierPath。
有没有办法让这个裁剪部分成为不规则形状的UIImage?如果没有,是否有另一种方法使用用户绘制的路径裁剪照片,如上面的链接所示,这将允许它存储为不规则形状的UIImage?
谢谢!
答案 0 :(得分:0)
请完整检查此库。他们定义了一种方法,您可以从Graphic上下文中获取图像。
func cropImage(){
UIGraphicsBeginImageContextWithOptions(tempImageView.bounds.size, false, 1)
tempImageView.layer.render(in: UIGraphicsGetCurrentContext()!)
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
self.croppedImage = newImage!
}
这是您可以获得UIImage
并根据您的要求使用它的方法。