【发布时间】:2011-08-18 08:17:33
【问题描述】:
我遇到了屏蔽图像的问题。我做游戏“拼图”并且必须制作自定义图像。我发现并尝试了 2 种自定义裁剪方式:
- 使用
CALayer.mask属性。 - 使用
UIImage.mask属性。
在第一个选项中,我创建自定义路径,然后将其分配给 CAShapeLayer.path 属性,然后将 CAShapeLayer 分配给 CALayer.mask 属性。最后我有自定义裁剪图像。
在第二个选项中,我首先使用CGImageMaskCreate() 方法(我使用之前创建的拼图黑色蒙版图像),然后使用CGContextClipToMask()。
在任一选项中,我都遇到了性能问题(主要是当我将图像裁剪成 16 个拼图并在屏幕上拖动时)。
是否有任何其他方法以自定义方式裁剪图像。 (我不知道如何解决性能问题)。 提前致谢。
【问题讨论】:
-
您要问的不是裁剪,而是蒙版。您一再声明要屏蔽非矩形区域;裁剪几乎总是指矩形区域。您可能需要相应地调整问题。
标签: iphone ios calayer puzzle cashapelayer