我有几个 UIImage 的。它们都是 .png 格式。我需要将另一个 Image 或 UIView 剪辑到 UIImage 的不透明部分。一些图像的外边缘具有一定的透明度。如果我使用 clipsToBounds 它只会剪辑到 UIImageView 的框架而不是实际的图像。如果我将线剪成相同的高度,它会在中心看起来很好,但我需要将线定位在中心的右侧或左侧。请查看照片以获得更好的解释。我已经尝试了一些使用 Core Gaphics 的方法,但是,我还没有找到解决方案。
问问题
574 次
2 回答
4
您可以尝试使用CALayer
'mask
属性。它允许您定义
一个可选层,其 alpha 通道用作蒙版,以在层的背景和将层的内容与其过滤背景合成的结果之间进行选择。
要将视图遮罩为 .png,请将遮罩层设置为contents
.png CGImageRef
。
不过记得导入QuartzCore
框架!;)
参考
于 2012-04-19T20:44:23.263 回答
2
看看 CALayer 的 mask 属性。您可以设置一个不透明度的图层将用作视图图层的 alpha 信息(yourUIImageView.layer.mask)。
例如,您可以使用 CAGradientLayer 将 alpha 渐变添加到您的视图,或者使用其他 UIImageview 的图层(如果它具有 alpha 通道)。
编辑:Jenox 速度更快并提供了更多信息,因此他的答案应该被标记为正确。
于 2012-04-19T20:46:08.340 回答