用Windows GDI绘制一个点

时间:2014-09-16 16:40:31

标签: c++ windows graphics gdi

我对Windows GDI图形API非常熟悉,而且我已经失去了多年的功能:如何画一个点?

一个点,我的意思是一个小的像素图案,比如一个3x3或5x5的正方形(可能省略了角落),颜色都是一样的。

我的约束是我希望用尽可能少的资源有效地做到这一点。

  • 我可以根据需要多次使用SetPixel功能(25次调用5x5平方)。

  • 我可以在同一坐标上用厚笔两次MoveTo / LineTo次调用。但我不确定这会产生一个完整的点,我不喜欢创建专用笔的想法。

  • 我也可以使用RectangleEllipse函数,但是这些函数会绘制轮廓并填充内部,并且对于这么小的形状必须是过度杀伤。 (不计算他们需要专用笔和专用刷子的事实。)

您对什么是有效且方便的方法有任何见解?你会怎么做?

1 个答案:

答案 0 :(得分:1)

至少据我所知,没有一个可用的选项是非常理想的。在我看来,FillRect可能是最不成问题的。

这要求您创建一个正确颜色的画笔,但至少这是它所需要的。