QBitmap Class
Die Klasse „QBitmap“ stellt monochrome Pixmaps (1-Bit-Farbtiefe) bereit. Mehr...
| Header: | #include <QBitmap> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Erbt von: | QPixmap |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- Veraltete Mitglieder
- QBitmap gehört zu den Mal-Klassen und den implizit gemeinsam genutzten Klassen.
Öffentliche Funktionen
| QBitmap() | |
| QBitmap(const QSize &size) | |
| QBitmap(const QString &fileName, const char *format = nullptr) | |
| QBitmap(int width, int height) | |
| void | clear() |
| void | swap(QBitmap &other) |
| QBitmap | transformed(const QTransform &matrix) const |
| operator QVariant() const |
Statische öffentliche Mitglieder
| 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) |
(since 6.0) QBitmap | fromPixmap(const QPixmap &pixmap) |
Ausführliche Beschreibung
Die Klasse „QBitmap“ ist ein monochromes Off-Screen-Zeichenobjekt, das hauptsächlich zum Erstellen benutzerdefinierter Objekte vom Typ „ QCursor “ und „ QBrush “, zum Erstellen von „ QRegion “-Objekten sowie zum Festlegen von Masken für Pixmaps und Widgets verwendet wird.
QBitmap ist eine Unterklasse von „ QPixmap “, die eine Tiefe von 1 gewährleistet, mit Ausnahme von Null-Objekten, die eine Tiefe von 0 haben. Wird einer Bitmap eine Pixmap mit einer Tiefe größer als 1 zugewiesen, wird die Bitmap automatisch gedithert.
Verwenden Sie die „ QColor “-Objekte „ Qt::color0 “ und „ Qt::color1 “, wenn Sie auf ein „QBitmap“-Objekt (oder ein „ QPixmap “-Objekt mit der Tiefe 1) zeichnen.
Das Zeichnen mit „ Qt::color0 “ setzt die Bits der Bitmap auf 0, das Zeichnen mit „ Qt::color1 “ setzt die Bits auf 1. Bei einer Bitmap stehen 0-Bits für den Hintergrund (bzw. transparente Pixel) und 1-Bits für den Vordergrund (bzw. opake Pixel). Verwenden Sie die Funktion „ clear()“, um alle Bits auf „ Qt::color0 “ zu setzen. Beachten Sie, dass die Verwendung der Farben „ Qt::black “ und „ Qt::white “ keinen Sinn ergibt, da der Wert von „QColor::pixel()“ nicht unbedingt 0 für Schwarz und 1 für Weiß ist.
Die Klasse `QBitmap` stellt die Funktion ` transformed()` zur Verfügung, die eine transformierte Kopie der Bitmap zurückgibt; verwenden Sie das Argument ` QTransform `, um die Bitmap zu verschieben, zu skalieren, zu scheren und zu drehen. Darüber hinaus bietet `QBitmap` die statische Funktion ` fromData()`, die eine aus den angegebenen ` uchar `-Daten erstellte Bitmap zurückgibt, sowie die statische Funktion ` fromImage()`, die eine konvertierte Kopie eines ` QImage `-Objekts zurückgibt.
Genau wie die Klasse „ QPixmap “ ist auch „QBitmap“ durch die Verwendung impliziter Datenfreigabe optimiert. Weitere Informationen finden Sie in der Dokumentation zur impliziten Datenfreigabe.
Siehe auch „ QPixmap“ , „ QImage “, „ QImageReader “ und „ QImageWriter “.
Dokumentation zu den Mitgliedsfunktionen
QBitmap::QBitmap()
Erstellt eine Null-Bitmap.
Siehe auch ` QPixmap::isNull()`.
[explicit] QBitmap::QBitmap(const QSize &size)
Erstellt eine Bitmap mit dem angegebenen ` size`. Die Pixel in der Bitmap sind nicht initialisiert.
Siehe auch ` clear()`.
[explicit] QBitmap::QBitmap(const QString &fileName, const char *format = nullptr)
Erstellt eine Bitmap aus der Datei, die durch den angegebenen Parameter ` fileName` bezeichnet wird. Wenn die Datei nicht existiert oder ein unbekanntes Format hat, wird die Bitmap zu einer Null-Bitmap.
Die Parameter ` fileName ` und ` format ` werden an die Funktion ` QPixmap::load()` übergeben. Wenn das Dateiformat mehr als 1 Bit pro Pixel verwendet, wird die resultierende Bitmap automatisch gedithert.
Siehe auch QPixmap::isNull() und QImageReader::imageFormat().
QBitmap::QBitmap(int width, int height)
Erstellt eine Bitmap mit den angegebenen Werten für „ width “ und „ height “. Die darin enthaltenen Pixel sind nicht initialisiert.
Siehe auch clear().
void QBitmap::clear()
Löscht die Bitmap und setzt alle ihre Bits auf „ Qt::color0 “.
[static] QBitmap QBitmap::fromData(const QSize &size, const uchar *bits, QImage::Format monoFormat = QImage::Format_MonoLSB)
Erstellt eine Bitmap mit dem angegebenen „ size “ und setzt den Inhalt auf die bereitgestellte „ bits “.
Die Bitmap-Daten müssen byte-ausgerichtet sein und in der durch ` monoFormat` angegebenen Bitreihenfolge bereitgestellt werden. Das Mono-Format muss entweder ` QImage::Format_Mono ` oder ` QImage::Format_MonoLSB` sein. Verwenden Sie ` QImage::Format_Mono `, um Daten im XBM-Format anzugeben.
Siehe auch fromImage().
[static] QBitmap QBitmap::fromImage(const QImage &image, Qt::ImageConversionFlags flags = Qt::AutoColor)
Gibt eine Kopie des angegebenen „ image “ zurück, das mithilfe des angegebenen Bildkonvertierungs flags s in eine Bitmap umgewandelt wurde.
Siehe auch fromData().
[static] QBitmap QBitmap::fromImage(QImage &&image, Qt::ImageConversionFlags flags = Qt::AutoColor)
Gibt eine Kopie des angegebenen „ image “ zurück, das mithilfe des angegebenen Bildkonvertierungs flags s in eine Bitmap umgewandelt wurde.
Dies ist eine überladene Funktion.
Siehe auch ` fromData()`.
[static, since 6.0] QBitmap QBitmap::fromPixmap(const QPixmap &pixmap)
Gibt eine Kopie der angegebenen „ pixmap “ zurück, die in eine Bitmap konvertiert wurde.
Wenn die Pixmap eine Farbtiefe größer als 1 hat, wird die resultierende Bitmap automatisch gedithert.
Diese Funktion wurde in Qt 6.0 eingeführt.
Siehe auch ` QPixmap::depth()`.
void QBitmap::swap(QBitmap &other)
Tauscht diese Bitmap mit „ other “ aus. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.
QBitmap QBitmap::transformed(const QTransform &matrix) const
Gibt eine Kopie dieser Bitmap zurück, die gemäß der angegebenen Funktion ` matrix` transformiert wurde.
Siehe auch QPixmap::transformed().
QBitmap::operator QVariant() const
Gibt die Bitmap als „ QVariant “ zurück.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.