如何将CAShapeLayer坐标转换为CIRectangleFeature以进行手动裁剪
我正在处理手动图像裁剪function。 为了绘制CAShapeLayer,我们使用了四个坐标topLeft,topRight,bottomRight和bottomLeft。 用户可以平移点并select裁剪区域。 我被困在将这些点转换为核心图像坐标,并进一步裁剪与CIPerspectiveTransform。
将图像设置为imageView并使用形状图层遮罩imageView。
self.imageView = img imageView.layer.mask = shapeLayer // set here your shape layer
现在你的imageView有裁剪图像。
从当前上下文获取图像如下
UIGraphicsBeginImageContextWithOptions(imageView.bounds.size, false, 0); imageView.layer.render(in: UIGraphicsGetCurrentContext()!) let image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); // check cropping image let resultImageView = UIImageView(frame: self.view.frame) resultImageView.image = image self.view.addSubview(resultImageView)
- 从CIImage获取CGImage
- CIGaussianBlur和iOS 6上的CIAffineClamp
- iOS UIImage在通过CIFilter后被旋转
- UIGraphicsBeginImageContext必须是视网膜感知?
- CIDetector不会释放内存 – swift
- CGImageDestinationFinalize或UIImageJPEGRepresentation – 在IOS 10上保存大文件时发生崩溃
- iOS:如何高效地模糊图像?
- 将核心图像滤镜(CIBumpDistortion)应用于图像的一个部分+改变CIFilter的select和强度的半径
- 核心图像:使用CICrop后,应用合成filter不排队