[英]How to get the portion of image that is masked in iPhone
我使用CAShapeLayer遮罩了我的图像,我只想检索被遮罩的部分。 当我检索时,我只会得到完整的图像。
任何人都可以向我提供一些与此相关的代码/信息吗?
CAShapeLayer * maskLayer = [CAShapeLayer层];
maskLayer.frame = CGRectMake(0, 0, clippingPath.bounds.size.width, clippingPath.bounds.size.height) ;
maskLayer.path = [clippingPath CGPath];
maskLayer.fillColor = [[UIColor blackColor] CGColor];
maskLayer.backgroundColor = [[UIColor clearColor] CGColor];
[ imgView removeFromSuperview ] ;
imgView.layer.mask = maskLayer ;
提前致谢 :)
CALayer
仅用于显示,它实际上并不是在修改图像本身。
要屏蔽图像,您必须自己创建图像,或者使用Quartz 2D绘图,或者使用CoreImage框架中的CIFilter
/ CIImage
。
要使用Core Graphics(Quartz 2D)遮罩图像,请使用CGImageCreateWithMask
和CGImageMaskCreate
。 这些功能使您可以用另一张图像的内容遮盖其中一张图像。 您说您现在使用贝塞尔曲线路径进行遮罩,因此必须首先将该路径渲染为图像才能遮罩原始图像。
要使用CoreImage遮罩图像,请查看CIBlendWithMask
过滤器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.