我想做的是:
我在iPhone屏幕上有一张图片。
现在,用户将手指放在图像上。就像他会制作圆形或三角形或正方形或星形。 (不用担心,移动会有闭环)。
现在,当用户完成移动意味着用户将使形状像圆形,三角形或任何东西,然后应该裁剪该部分图像。
有这个想法或与此有关的任何一个吗?
如有更多详情,请告诉我。
感谢。
答案 0 :(得分:0)
你应该阅读Quartz2D Programming Guide,它解释了CoreGraphics如何帮助你做到这一点。
特别是有一个专门用于路径(NSBezierPaths
),剪裁区域,图像蒙版等的部分。在你的情况下,可能是面具,但可能需要更多剪裁区域。
您还可以使用路径来约束路径边界内其他对象的绘制,实际上是创建剪切区域。
(您在文档中看到的捕获是MacOSX窗口,但当然您可以在iPhone上完全相同,Quartz2D上的文档对于这两种环境都非常通用)
答案 1 :(得分:0)
这对我来说很有把戏
if (!self.pictureImageViewMasked) {
UIBezierPath *path = [UIBezierPath bezierPath];
[path moveToPoint:CGPointMake(0.0, 0.0)];
[path addLineToPoint:CGPointMake(50.0, 0.0)];
[path addLineToPoint:CGPointMake(50.0, 50.0)];
[path addLineToPoint:CGPointMake(0.0, 50.0)];
[path closePath];
if (![[self.pictureImageView layer] mask]) {
[[self.pictureImageView layer] setMask:[CAShapeLayer layer]];
}
[(CAShapeLayer*)[[self.pictureImageView layer] mask] setPath:[path CGPath]];
self.pictureImageViewMasked = YES;
}