我想在用户通过触摸屏幕创建特定形状时裁剪图像。
例如,在下图中,当用户触摸并绘制形状(此处为绿色)时,形状内部的图像将被剪切并显示为新的UIImage:
我知道如何掩盖图像,也知道如何剪切矩形形状的图像但不知道这一点。
尝试这样的事情,它不是完全相同的问题,但这个算法的一个小改动应该适合你!
Draw border just inside non-transparent portion of image
它没有为任何平台提供精确的代码,但给出了如何完成此类任务的数学几何和通用循环算法。
在iOS中,您需要使用CoreGraphics执行新的图像创建(实际上是像素复制)。
你需要注意的事情。屏幕分辨率与实际图像分辨率。如果图像分辨率不同,则在执行数学计算裁剪区域时,从屏幕平移到显示的实际背景图像时,裁剪区域可能会增大或缩小。