Cocoa touch 在核心图形中绘制16x16随机像素网格

Cocoa touch 在核心图形中绘制16x16随机像素网格,cocoa-touch,random,drawing,core-graphics,pixels,Cocoa Touch,Random,Drawing,Core Graphics,Pixels,如何在Core Graphics中绘制尺寸为16x16的UIImage,其中填充了随机坐标下的随机像素和随机灰度颜色?目前这似乎有点不可能做到 编辑:也许我应该从对角线纹理开始?我的问题是逐个填充每个像素。在核心图形中似乎是不可行的。创建一个缓冲区,缓冲区的长度与像素的长度相同(因此,在本例中,16*16) 通过读取/dev/random来填充此缓冲区 使用kgimagealphanone将此缓冲区传递给 一旦您创建了一个CGImage,您就可以轻松地使用它了。根据您的需求,您实际上可以从同一个

如何在Core Graphics中绘制尺寸为16x16的UIImage,其中填充了随机坐标下的随机像素和随机灰度颜色?目前这似乎有点不可能做到


编辑:也许我应该从对角线纹理开始?我的问题是逐个填充每个像素。在核心图形中似乎是不可行的。

创建一个缓冲区,缓冲区的长度与像素的长度相同(因此,在本例中,
16*16

通过读取/dev/random来填充此缓冲区

使用
kgimagealphanone
将此缓冲区传递给

一旦您创建了一个CGImage,您就可以轻松地使用它了。根据您的需求,您实际上可以从同一个CGImage by创建多达八个“随机”UIImage


ETA:您还可以尝试创建每像素两字节的缓冲区和图像。然后,通过使用其中的每一个,您可以从同一缓冲区创建两个“随机”CGImages,总共16个“随机”UIImages。但是,我不知道在任何版本的iOS上是否支持每像素两个字节无alpha灰度

创建一个缓冲区,缓冲区的长度与像素的长度相同(因此,在本例中,
16*16

通过读取/dev/random来填充此缓冲区

使用
kgimagealphanone
将此缓冲区传递给

一旦您创建了一个CGImage,您就可以轻松地使用它了。根据您的需求,您实际上可以从同一个CGImage by创建多达八个“随机”UIImage


ETA:您还可以尝试创建每像素两字节的缓冲区和图像。然后,通过使用其中的每一个,您可以从同一缓冲区创建两个“随机”CGImages,总共16个“随机”UIImages。但是,我不知道在任何版本的iOS上是否支持每像素两个字节无alpha灰度

漂亮的回答!工作完美:漂亮的答案!工作完美:D