Objective c 使用.png将UIView剪辑到UIIimage(UIImageView)
我有几张UIImage的。它们都是.png格式的。我需要将另一个图像或UIView剪辑到UIImage的不透明部分。一些图像的外部边缘具有一定的透明度。如果我使用clipsToBounds,它将仅剪辑到UIImageView的帧,而不是实际图像。如果我把线剪到相同的高度,它的中心看起来很好,但我需要将线的位置偏离中心,有时向右或向左。请看照片以便更好地解释。我已经尝试了一些使用核心Gaphics的方法,但遗憾的是,我还没有找到解决方案Objective c 使用.png将UIView剪辑到UIIimage(UIImageView),objective-c,ios,cocoa-touch,Objective C,Ios,Cocoa Touch,我有几张UIImage的。它们都是.png格式的。我需要将另一个图像或UIView剪辑到UIImage的不透明部分。一些图像的外部边缘具有一定的透明度。如果我使用clipsToBounds,它将仅剪辑到UIImageView的帧,而不是实际图像。如果我把线剪到相同的高度,它的中心看起来很好,但我需要将线的位置偏离中心,有时向右或向左。请看照片以便更好地解释。我已经尝试了一些使用核心Gaphics的方法,但遗憾的是,我还没有找到解决方案 您可以尝试使用CALayer的mask属性。 它允许您定义
您可以尝试使用
CALayer
的mask
属性。
它允许您定义
可选层,其alpha通道用作选择的遮罩
在图层背景和合成图层的结果之间
图层内容及其过滤背景
要将视图遮罩为.png,请将遮罩层的内容设置为CGImageRef
记住导入QuartzCore
框架
您可以尝试使用CALayer
的mask
属性。
它允许您定义
可选层,其alpha通道用作选择的遮罩
在图层背景和合成图层的结果之间
图层内容及其过滤背景
要将视图遮罩为.png,请将遮罩层的内容设置为CGImageRef
记住导入QuartzCore
框架
看看CALayer的mask属性。您可以设置一个图层,该图层的不透明度将用作视图图层(yourUIImageView.layer.mask)的alpha信息
例如,您可以使用CAGradientLayer向视图添加alpha渐变,或者使用其他UIImageview的层(如果它具有alpha通道)
编辑:Jenox速度更快,提供了更多信息,所以他的答案应该标记为正确 看看CALayer的掩码属性。您可以设置一个图层,该图层的不透明度将用作视图图层(yourUIImageView.layer.mask)的alpha信息
例如,您可以使用CAGradientLayer向视图添加alpha渐变,或者使用其他UIImageview的层(如果它具有alpha通道)
编辑:Jenox速度更快,提供了更多信息,所以他的答案应该标记为正确