0
我可能并不总是理解API中的每个函数,但通常我至少可以开始解决某个问题。这一次,我甚至不知道这是可能的或如何攻击它......iOS - 计算区域中颜色的百分比
我在屏幕上有一个区域,用户可以绘制。这工作正常。他们用三种不同的颜色画出三种不同的情况。我需要检测该区域三种不同颜色的百分比覆盖率。似乎没有办法获得单个屏幕像素的颜色值。你会如何处理这个问题?
我可能并不总是理解API中的每个函数,但通常我至少可以开始解决某个问题。这一次,我甚至不知道这是可能的或如何攻击它......iOS - 计算区域中颜色的百分比
我在屏幕上有一个区域,用户可以绘制。这工作正常。他们用三种不同的颜色画出三种不同的情况。我需要检测该区域三种不同颜色的百分比覆盖率。似乎没有办法获得单个屏幕像素的颜色值。你会如何处理这个问题?
您可以通过创建一个位图图形上下文来创建一个分配的内存块,并将其传递给CGBitmapContextCreate
。
然后,您可以简单地将您的视图或图像绘制到该上下文中(例如,使用CALayer
方法renderInContext:
)。您分配的内存块将包含您已经绘制到上下文中的像素数据。字节顺序取决于创建上下文时指定的选项,通常它是RGBA(一个字节表示红色,下一个表示绿色等)。
然后我会使用CGBitmapContextGetData来实际访问像素数据? – simusid
是的,或者如果您自己分配数据,则可以使用它。 – omz