通过QDirectPainter绘画

时间:2009-01-09 19:29:34

标签: c++ qt qpainter

任何人都可以详细建议我如何使用QDirectPainter类直接在帧缓冲区上绘制窗口小部件。如果你能给我一个有效的例子,我会更有帮助。

1 个答案:

答案 0 :(得分:1)

QDirectPainter不能也不能绘制任何东西。它可以提供对帧缓冲的访问,即通过其QDirectPainter::frameBuffer () function。一旦你将指针指向帧缓冲区,你应该能够直接操作像素。

可能有效的方法是通过栅格引擎将窗口小部件绘制为QImage(小心颜色深度,字节顺序,像素位置等,以匹配帧缓冲区的那些)。通过在QImage上打开QPainter可以轻松实现这一点。绘制过程完成后,将图像缓冲区的相关部分blit到帧缓冲区。