QBitmap 类提供单色(monochrome,1位深度)像素图。
QBitmap类是单色的 off-screen 绘画设备,主要用于创建自定义QCursor
和QBrush
对象,构造QRegion
对象以及为像素图(pixmaps)和小部件(widgets)设置蒙版。
QBitmap
是确保深度为 1 的QPixmap
子类,深度为 0 的空对象除外。如果将深度大于 1 的像素图分配给位图,则位图将自动抖动。
在QBitmap
对象(或深度为 1 的 QPixmap 对象)上绘制时,请使用QColor
对象color0
和color1
。使用color0
进行绘制会将位图位设置为 0,使用color1
进行绘制会将位图位设置为 1。对于位图,0 位表示背景(或透明像素),而 1 位表示前景(或不透明像素)。使用clear()
函数将所有位设置为color0
。请注意,使用黑色和白色是没有意义的,因为QColor::pixel()
值对于黑色不一定为 0,对于白色不一定为 1。
QBitmap
类提供了transformd()
函数,该函数返回位图的转换后的副本;使用QTransform
参数平移,缩放,剪切和旋转位图。另外,QBitmap
提供了静态的fromData()
函数,该函数返回从给定的uchar
数据构造的位图,以及静态的fromImage()
函数,返回转换后的QImage
对象的副本。
就像QPixmap
类一样,QBitmap
通过使用隐式数据共享进行了优化。有关更多信息,请参见Implicit Data Sharing文档。
网友评论