Класс QBitmap
Класс QBitmap предоставляет монохромные (1-битовая глубина) растровые изображения. Подробнее...
| Заголовок: | #include <QBitmap> |
| qmake: | QT += gui |
| Наследуется от: | QPixmap |
Открытые функции
| QBitmap(const QString &fileName, const char *format = nullptr) | |
| QBitmap(const QSize &size) | |
| QBitmap(int width, int height) | |
| QBitmap(const QPixmap &pixmap) | |
| QBitmap() | |
| QBitmap & | operator=(const QPixmap &pixmap) |
| virtual | ~QBitmap() |
| 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) |
Подробное описание
Класс QBitmap — это монохромное (отрисовываемое без задействования экранных буферов) устройство, используемое в основном для создания пользовательских объектов QCursor и QBrush, построения объектов QRegion и для задания масок для растровых изображений и виджетов.
QBitmap является подклассом QPixmap, гарантирующим глубину 1, за исключением нулевых объектов, которые имеют глубину 0. Если растровому изображению с глубиной более 1 присваивается битовая карта, битовая карта будет автоматически пороговой.
Используйте объекты QColor Qt::color0 и Qt::color1 при отрисовке на объекте QBitmap (или объекте QPixmap с глубиной 1).
Отрисовка с помощью 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 данных, и статическую функцию fromImage(), возвращающую преобразованную копию объекта QImage.
Так же, как и класс QPixmap, QBitmap оптимизирован за счет использования неявного совместного использования данных. Дополнительную информацию см. в документации по Неявное совместное использование данных.
См. также QPixmap, QImage, QImageReader и QImageWriter.
Документация по функциям-членам
QBitmap::QBitmap(const QString &fileName, const char *format = nullptr)
Создаёт битовую карту из файла, указанного в fileName. Если файл не существует или имеет неизвестный формат, битовая карта становится нулевой.
Параметры fileName и format передаются функции QPixmap::load(). Если формат файла использует более 1 бита на пиксель, полученная битовая карта будет автоматически пороговой.
См. также QPixmap::isNull() и QImageReader::imageFormat().
QBitmap::QBitmap(const QSize &size)
Создаёт битовую карту заданного размера size. Пиксели в битовой карте не инициализированы.
См. также clear().
QBitmap::QBitmap(int width, int height)
Создаёт битовую карту заданной ширины и высоты width и height. Пиксели внутри не инициализированы.
См. также clear().
QBitmap::QBitmap(const QPixmap &pixmap)
Создаёт битовую карту, являющуюся копией данной pixmap.
Если растровое изображение имеет глубину более 1, полученная битовая карта будет автоматически пороговой.
См. также QPixmap::depth(), fromImage() и fromData().
QBitmap::QBitmap()
Создаёт нулевую битовую карту.
См. также QPixmap::isNull().
QBitmap &QBitmap::operator=(const QPixmap &pixmap)
Это перегруженная функция.
Присваивает данную pixmap этой битовой карте и возвращает ссылку на эту битовую карту.
Если растровое изображение имеет глубину более 1, полученная битовая карта будет автоматически пороговой.
См. также QPixmap::depth().
[virtual] QBitmap::~QBitmap()
Уничтожает битовую карту.
void QBitmap::clear()
Очищает битовую карту, устанавливая все её биты в Qt::color0.
[static] QBitmap QBitmap::fromData(const QSize &size, const uchar *bits, QImage::Format monoFormat = QImage::Format_MonoLSB)
Создаёт битовую карту заданного размера size и устанавливает содержимое в предоставленные bits.
Данные битовой карты должны быть выровнены по байтам и представлены в порядке битов, указанном в monoFormat. Формат mono должен быть либо QImage::Format_Mono, либо QImage::Format_MonoLSB. Используйте QImage::Format_Mono для указания данных в формате XBM.
См. также fromImage().
[static] QBitmap QBitmap::fromImage(const QImage &image, Qt::ImageConversionFlags flags = Qt::AutoColor)
Возвращает копию данного image, преобразованного в битовую карту с использованием указанных флагов преобразования изображения flags.
См. также fromData().
[static] QBitmap QBitmap::fromImage(QImage &&image, Qt::ImageConversionFlags flags = Qt::AutoColor)
Это перегруженная функция.
Возвращает копию данного image, преобразованного в битовую карту с использованием указанных флагов преобразования изображения flags.
Эта функция была добавлена в Qt 5.12.
См. также fromData().
void QBitmap::swap(QBitmap &other)
Меняет местами битовую карту other с этой битовой картой. Эта операция очень быстрая и никогда не терпит неудачи.
Эта функция была добавлена в Qt 4.8.
QBitmap QBitmap::transformed(const QTransform &matrix) const
Возвращает копию этого растрового изображения, преобразованного в соответствии с заданной матрицей.
См. также QPixmap::transformed().
QVariant QBitmap::operator QVariant() const
Возвращает растровое изображение как QVariant.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qbitmap.html