kar*_*lip 52
通过阅读QImage和QPixmap上的文档,Easilly回答:
所述的QPixmap类是一个离屏,可用于作为涂料设备图像表示.
所述QImage的类提供独立于硬件的图像表示,其允许像素数据的直接访问,并且可以被用作涂料设备.
编辑:另外,来自@ Dave的回答:
你不能在GUI线程之外操纵QPixmap,但QImage没有这样的限制.
来自@Arnold:
以下是通常(并非总是)适用的简短摘要:
- 如果您打算操纵图像,修改图像,更改图像等,请使用QImage.
- 如果您计划在屏幕上多次绘制相同的图像,请将其转换为QPixmap.
iks*_*ess 17
在工业环境中很重要:
QPixmap存储在进行显示的视频卡上.不是QImage.
因此,如果您有运行应用程序的服务器和执行显示的客户端工作站,则在网络使用方面非常重要.
使用Pixmap,Redraw只包含通过网络重新绘制(几个字节)的顺序.
使用QImage,它包括发送整个图像(大约几MB).
Moh*_*nan 12
QPixmap
是一个“图像对象”,其pixel
表示形式与您的代码无关,因此QPixmap是为在显示屏幕上呈现图像而设计和优化的,使用X11时将其存储在XServer上,因此在XWindow上绘制QPixmap的速度比绘制要快得多。 QImages,因为数据已经在服务器上,可以使用了。
何时使用QPixmap:如果您只是想反复绘制现有图像(图标..背景..等),请使用QPixmap。
QImage是客户端代码的“内存中的像素数组” ,QImage是针对I / O以及直接像素访问和操纵而设计和优化的。
何时使用QImage:如果要绘制,请使用Qpaint或操纵图像像素。
QBitmap只是一个方便的QPixmap子类,它确保深度为1,它是单色(1位深度)像素图。就像QPixmap一样,QBitmap已针对使用隐式数据共享进行了优化。