问题描述
|
即时通讯创建和应用程序,其中用户已经具有没有颜色的图像(具有不同的对象),我必须检查该对象,然后通过在该对象上进行触摸来使用受尊重的颜色进行着色。我应该怎么做。谁能帮我。
解决方法
我会说这是不平凡的。我只能给出提示,因为我还没有做过这样的应用程序。
首先,您需要将图像转换为
CGImageRef
,例如通过执行[uiimage_object CGImage]
。
接下来,您需要将CGImageRef转换为像素颜色数组。您可以通过http://www.fiveminutes.eu/iphone-image-processing/上的教程获取示例代码。但是对于您的应用程序,您需要根据图像的宽度和高度将数组转换为二维。
然后,使用用户触摸的坐标来访问数组中的确切像素颜色值。接下来,您读取周围像素的颜色值,并确定颜色是否与触摸的像素相似(在进行颜色比较时,您可能需要阅读一些维基百科文章等)。如果颜色相似,则将颜色更改为所需的颜色。递归直到周围的颜色不同(即您达到边界)。
完成像素颜色值数组的修改后,需要使用CGImageCreate
函数将其转换回CGImageRef
。然后使用[UIImage imageWithCGImage:imageref]
转换回UIImage
。
现在,您可以自己将步骤实现为代码。如果您希望我为您编写所有代码,那是不合理的,不是吗?