QBitmap类
QBitmap类提供单色(1位深度)位图。 更多信息...
头文件 | #include <QBitmap> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake | QT += gui |
继承 | QPixmap |
- 包括继承成员在内的所有成员列表
- 已弃用成员
- QBitmap是绘图类和隐式共享类的一部分。
公开函数
QBitmap() | |
QBitmap(int width, int height) | |
QBitmap(const QString &fileName, const char *format = nullptr) | |
void | clear() |
void | swap(QBitmap &other) |
QBitmap | transformed(const QTransform &matrix) const |
QVariant | operator QVariant() const |
静态公开成员
QBitmap | fromData(const QSize &size, const uchar *bits, QImage::Format monoFormat = QImage::Format_MonoLSB) |
QBitmap | fromImage(const QImage &image, Qt::ImageConversionFlags flags = Qt::AutoColor) |
QBitmap | fromImage(QImage &&image, Qt::ImageConversionFlags flags = Qt::AutoColor) |
(自6.0起) QBitmap | fromPixmap(const QPixmap &pixmap) |
详细描述
QBitmap类是一个单色离屏绘图设备,主要用于创建自定义的QCursor和QBrush对象,构建QRegion对象,以及为位图和控件设置掩码。
QBitmap是QPixmap子类,确保深度为1,除了空对象,它们的深度为0。如果将具有大于1的深度的位图分配给位图,位图将自动进行抖动。
绘制在QBitmap对象(或深度为1的QPixmap对象)上时,使用QColor对象Qt::color0和Qt::color1。
使用Qt::color0进行绘制将位图位设置为0,使用Qt::color1进行绘制将位图位设置为1。对于位图,0位表示背景(或透明像素),而1位表示前景(或不透明像素)。使用clear()函数将所有位设置为Qt::color0。请注意,使用Qt::black和Qt::white颜色没有意义,因为QColor::pixel()的值对黑色不一定为0,对白色不一定为1。
QBitmap类提供了transformed()函数,返回位图的变换拷贝;使用QTransform参数来平移、缩放、扭曲和旋转位图。此外,QBitmap提供了静态fromData()函数,它返回从给定uchar
数据构建的位图,以及返回QImage对象转换拷贝的静态fromImage()函数。
另请参阅QPixmap、QImage、QImageReader和QImageWriter。
成员函数文档
QBitmap::QBitmap()
构造一个空位图。
另请参阅QPixmap::isNull。
QBitmap::QBitmap(int width, int height)
构造一个具有给定width和height的位图。内部的像素是未初始化的。
另请参阅clear。
[显式构造函数]
QBitmap::QBitmap(const QString &fileName, const char *format = nullptr)
从指定的fileName文件中构造一个位图。如果文件不存在或格式未知,则位图变为空位图。
fileName和format参数传递给QPixmap::load()函数。如果文件格式每个像素使用超过1位,则位图将自动进行抖动。
另请参阅QPixmap::isNull()和QImageReader::imageFormat。
void QBitmap::clear()
清除位图,将其所有位设置为Qt::color0。
[静态]
QBitmap QBitmap::fromData(const QSize &size, const uchar *bits, QImage::Format monoFormat = QImage::Format_MonoLSB)
使用给定的size构造一个位图,并设置其内容为提供的bits。
位图数据必须字节对齐,并以 monotFormat 指定的位顺序提供。单色格式必须是 QImage::Format_Mono 或 QImage::Format_MonoLSB。使用 QImage::Format_Mono 来指定 XBM 格式上的数据。
另请参阅 fromImage。
[静态]
QBitmap QBitmap::fromImage(const QImage &image, Qt::ImageConversionFlags flags = Qt::AutoColor)
返回给定 image 的拷贝,并使用指定的图像转换 flags 转换为位图。
另请参阅 fromData。
[静态,自 6.0 版起]
QBitmap QBitmap::fromImage(QImage &&image, Qt::ImageConversionFlags flags = Qt::AutoColor)
这是一个重载函数。
返回给定 image 的拷贝,并使用指定的图像转换 flags 转换为位图。
另请参阅 fromData。
[静态]
QBitmap QBitmap::fromPixmap(const QPixmap &pixmap)
返回给定 pixmap 的拷贝,将其转换为位图。
如果 pixmap 的深度大于 1,产生的位图将被自动抖动。
此功能在 Qt 6.0 中引入。
另请参阅 QPixmap::depth。
void QBitmap::swap(QBitmap &other)
与当前位图交换 other 位图。此操作非常快且永远不会失败。
QBitmap QBitmap::transformed(const QTransform &matrix) const
返回一个拷贝的位图,其根据给定的 matrix 进行了转换。
另请参阅 QPixmap::transformed。
QVariant QBitmap::operator QVariant() const
将位图作为 QVariant 返回。
© 2024 The Qt Company Ltd. 本文档中的文档贡献为各自所有者的版权。本提供的文档根据自由软件基金会的出版,受 GNU 自由文档许可证版本 1.3 的条款许可。Qt 和相应的标志是芬兰和/或全球其他国家的 The Qt Company Ltd. 的商标。所有其他商标均为其各自所有者的财产。