iOS图像编辑开源库 - 或者只是一些提示

Ran*_*Ran 5 drawing editing core-graphics uiimage ios

对于我正在编写的ios应用程序,我想从照片库中拍摄照片,然后让用户"清理它",基本上删除不需要的部分.例如,假设用户选择一个人的照片,我的应用程序只需要头部,其他一切都应该被删除,因此用户需要通过删除照片中的背景,身体或其他人来清理照片.想象一下像Photoshop一样的经验,但只有一个工具 - 橡皮擦.

我正在寻找开源库,或示例或只是如何开始使用它的提示.

我知道如何使用UIImagePickerController来选择图像,所以缺少的部分是实际的编辑.作为一个完整的菜鸟,我很乐意就什么是合理的方法得到一些建议,最好是一些示例代码甚至可重用的库.

我想,在高层次上,我想做的是从一个矩形图像开始,并确保它有一个alpha图层,然后当用户触摸图像的一部分删除它们时,我需要"删除"更多的像素图像通过将其alpha级别更改为0.但这是一个过高的级别描述,我甚至不确定是否正确...另一个合理的要求是撤消支持.

想到的另一种方法是使用原始图像和用户在触摸屏幕时编辑的掩模图像,并且当"完成"时,以某种方式将两个图像编译成具有α的一个图像.当然,这是一个实现细节,用户不需要知道屏幕上有两个图像.

如果可能的话,我想留在UIImage或UIImageView或Core Graphics级别,而不必乱用OpenGL ES.我的直觉是,更高的图形级别应该足够高性能且易于理解,可维护的清洁代码是一个考虑因素......

任何建议表示赞赏,谢谢!

Rog*_*Rog 0

您需要熟悉 Quartz 2D / CoreGraphics。本指南对您来说是一个良好的开始http://developer.apple.com/library/mac/#documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/Introduction/Introduction.html

您所描述的任务可以根据您的需要简单或复杂。从让用户用手指拖动手指来擦除照片周围的区域(简单),到尝试检测高对比度区域以帮助您猜测要剪切的位置(相当复杂)。

如果您选择前者,您本质上会想要根据用户触摸创建一个剪切蒙版,因此请查看 UIView 的 TouchesBegan、touchesMoved 和 TouchesEnded 方法。

对于剪贴蒙版,这可能是一个很好的简单示例,可以帮助您入门如何擦除 UIImage 的一部分

祝你好运,这听起来是一个有趣的(如果不是具有挑战性的)项目。