如何在iPhone坐标(x,y)上显示颜色C的像素?

时间:2010-05-21 21:12:09

标签: iphone objective-c

我已经阅读了有关iPhone开发的所有Apple文档,并且没有任何描述如何操作的文档。

1 个答案:

答案 0 :(得分:0)

iPhone上的绘图不是以像素为导向的。如果需要,可以使用Quartz API绘制一个大小为1x1的矩形:{/ 1}}方法:

drawRect:

但你不想用这种方法填满整个屏幕,这很疯狂。你应该考虑矢量:线条,矩形,其他多边形。这适用于Quartz(如上所述)和OpenGL。

如果你真的在做一些最终渲染像素的东西填充整个屏幕,你最好的选择可能是使用Quartz来创建一个屏幕外的位图上下文,直接按像素写入位图内存,以及然后将整个事物绘制到CGColorRef colorRef = CGColorCreateGenericRGB(r, g, b, a); CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetFillColorWithColor(context, colorRef); // This next line does the drawing; repeat for as many x,y pairs as you want. CGContextFillRect(context, CGRectMake(x,y,1,1)); CGColorRelease(colorRef); 内的绘图上下文中。您还可以使用OpenGL绘制一系列单像素大小的GL_POINT(而不是三角形),这可能会更快,具体取决于您正在做什么。