Auf dieser Seite

QImage Class

Die Klasse „QImage“ bietet eine hardwareunabhängige Bilddarstellung, die den direkten Zugriff auf die Pixeldaten ermöglicht und als Zeichenvorrichtung verwendet werden kann. Mehr...

Header: #include <QImage>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Erbt von: QPaintDevice

Hinweis: Alle Funktionen dieser Klasse sind reentrant.

Öffentliche Typen

enum Format { Format_Invalid, Format_Mono, Format_MonoLSB, Format_Indexed8, Format_RGB32, …, Format_CMYK8888 }
enum InvertMode { InvertRgb, InvertRgba }

Öffentliche Funktionen

QImage()
QImage(const char *const[] xpm)
QImage(const QSize &size, QImage::Format format)
QImage(const QString &fileName, const char *format = nullptr)
QImage(int width, int height, QImage::Format format)
QImage(const uchar *data, int width, int height, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)
QImage(uchar *data, int width, int height, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)
QImage(const uchar *data, int width, int height, qsizetype bytesPerLine, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)
QImage(uchar *data, int width, int height, qsizetype bytesPerLine, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)
QImage(const QImage &image)
QImage(QImage &&other)
virtual ~QImage()
bool allGray() const
void applyColorTransform(const QColorTransform &transform)
(since 6.8) void applyColorTransform(const QColorTransform &transform, QImage::Format toFormat, Qt::ImageConversionFlags flags = Qt::AutoColor)
int bitPlaneCount() const
uchar *bits()
const uchar *bits() const
qsizetype bytesPerLine() const
qint64 cacheKey() const
QRgb color(int i) const
int colorCount() const
QColorSpace colorSpace() const
QList<QRgb> colorTable() const
(since 6.4) QImage colorTransformed(const QColorTransform &transform) const &
(since 6.8) QImage colorTransformed(const QColorTransform &transform, QImage::Format toFormat, Qt::ImageConversionFlags flags = Qt::AutoColor) const &
(since 6.4) QImage colorTransformed(const QColorTransform &transform) &&
(since 6.8) QImage colorTransformed(const QColorTransform &transform, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&
const uchar *constBits() const
const uchar *constScanLine(int i) const
void convertTo(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor)
void convertToColorSpace(const QColorSpace &colorSpace)
(since 6.8) void convertToColorSpace(const QColorSpace &colorSpace, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor)
QImage convertToFormat(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&
QImage convertToFormat(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) const &
QImage convertToFormat(QImage::Format format, const QList<QRgb> &colorTable, Qt::ImageConversionFlags flags = Qt::AutoColor) const
(since 6.0) QImage convertedTo(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&
(since 6.0) QImage convertedTo(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) const &
QImage convertedToColorSpace(const QColorSpace &colorSpace) const
(since 6.8) QImage convertedToColorSpace(const QColorSpace &colorSpace, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&
(since 6.8) QImage convertedToColorSpace(const QColorSpace &colorSpace, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) const &
QImage copy(const QRect &rectangle = QRect()) const
QImage copy(int x, int y, int width, int height) const
QImage createAlphaMask(Qt::ImageConversionFlags flags = Qt::AutoColor) const
QImage createHeuristicMask(bool clipTight = true) const
QImage createMaskFromColor(QRgb color, Qt::MaskMode mode = Qt::MaskInColor) const
int depth() const
(since 6.2) QSizeF deviceIndependentSize() const
qreal devicePixelRatio() const
int dotsPerMeterX() const
int dotsPerMeterY() const
void fill(uint pixelValue)
void fill(Qt::GlobalColor color)
void fill(const QColor &color)
(since 6.9) void flip(Qt::Orientations orient = Qt::Vertical)
(since 6.9) QImage flipped(Qt::Orientations orient = Qt::Vertical) &&
(since 6.9) QImage flipped(Qt::Orientations orient = Qt::Vertical) const &
QImage::Format format() const
bool hasAlphaChannel() const
int height() const
void invertPixels(QImage::InvertMode mode = InvertRgb)
bool isGrayscale() const
bool isNull() const
bool load(const QString &fileName, const char *format = nullptr)
bool load(QIODevice *device, const char *format)
(since 6.2) bool loadFromData(QByteArrayView data, const char *format = nullptr)
bool loadFromData(const QByteArray &data, const char *format = nullptr)
bool loadFromData(const uchar *data, int len, const char *format = nullptr)
(since 6.0, until 6.13) void mirror(bool horizontal = false, bool vertical = true)
(until 6.13) QImage mirrored(bool horizontal = false, bool vertical = true) &&
(until 6.13) QImage mirrored(bool horizontal = false, bool vertical = true) const &
QPoint offset() const
QRgb pixel(const QPoint &position) const
QRgb pixel(int x, int y) const
QColor pixelColor(const QPoint &position) const
QColor pixelColor(int x, int y) const
QPixelFormat pixelFormat() const
int pixelIndex(const QPoint &position) const
int pixelIndex(int x, int y) const
QRect rect() const
bool reinterpretAsFormat(QImage::Format format)
(since 6.0) void rgbSwap()
QImage rgbSwapped() &&
QImage rgbSwapped() const &
bool save(const QString &fileName, const char *format = nullptr, int quality = -1) const
bool save(QIODevice *device, const char *format = nullptr, int quality = -1) const
QImage scaled(const QSize &size, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation) const
QImage scaled(int width, int height, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation) const
QImage scaledToHeight(int height, Qt::TransformationMode mode = Qt::FastTransformation) const
QImage scaledToWidth(int width, Qt::TransformationMode mode = Qt::FastTransformation) const
uchar *scanLine(int i)
const uchar *scanLine(int i) const
void setAlphaChannel(const QImage &alphaChannel)
void setColor(int index, QRgb colorValue)
void setColorCount(int colorCount)
void setColorSpace(const QColorSpace &colorSpace)
void setColorTable(const QList<QRgb> &colors)
void setDevicePixelRatio(qreal scaleFactor)
void setDotsPerMeterX(int x)
void setDotsPerMeterY(int y)
void setOffset(const QPoint &offset)
void setPixel(const QPoint &position, uint index_or_rgb)
void setPixel(int x, int y, uint index_or_rgb)
void setPixelColor(const QPoint &position, const QColor &color)
void setPixelColor(int x, int y, const QColor &color)
void setText(const QString &key, const QString &text)
QSize size() const
qsizetype sizeInBytes() const
void swap(QImage &other)
QString text(const QString &key = QString()) const
QStringList textKeys() const
CGImageRef toCGImage() const
(since 6.0) HBITMAP toHBITMAP() const
(since 6.0) HICON toHICON(const QImage &mask = {}) const
QImage transformed(const QTransform &matrix, Qt::TransformationMode mode = Qt::FastTransformation) const
bool valid(const QPoint &pos) const
bool valid(int x, int y) const
int width() const
operator QVariant() const
bool operator!=(const QImage &image) const
QImage &operator=(QImage &&other)
QImage &operator=(const QImage &image)
bool operator==(const QImage &image) const

Statische öffentliche Mitglieder

(since 6.2) QImage fromData(QByteArrayView data, const char*format = nullptr)
QImage fromData(const QByteArray&data, const char*format = nullptr)
QImage fromData(const uchar*data, int size, const char*format = nullptr)
(since 6.0) QImage fromHBITMAP(HBITMAP hbitmap)
(since 6.0) QImage fromHICON(HICON icon)
QImage::Format toImageFormat(QPixelFormat format)
QPixelFormat toPixelFormat(QImage::Format format)
QTransform trueMatrix(const QTransform&matrix, int Breite, int Höhe)
QImageCleanupFunction
QDataStream &operator<<(QDataStream &stream, const QImage &image)
QDataStream &operator>>(QDataStream &stream, QImage &image)

Ausführliche Beschreibung

Qt stellt vier Klassen zur Verarbeitung von Bilddaten bereit: QImage, QPixmap, QBitmap und QPicture. QImage ist für Ein- und Ausgabe sowie für den direkten Zugriff auf und die Bearbeitung von Pixeln konzipiert und optimiert, während QPixmap für die Darstellung von Bildern auf dem Bildschirm konzipiert und optimiert ist. QBitmap ist lediglich eine Komfortklasse, die von QPixmap erbt und eine Tiefe von 1 gewährleistet. Schließlich ist die Klasse „ QPicture “ ein Zeichen-Gerät, das „ QPainter “-Befehle aufzeichnet und wiederabspielt.

Da „QImage“ eine Unterklasse von „ QPaintDevice “ ist, kann „ QPainter “ verwendet werden, um direkt auf Bilder zu zeichnen. Bei Verwendung von „ QPainter “ auf einem „QImage“ kann das Zeichnen in einem anderen Thread als dem aktuellen GUI-Thread erfolgen.

Die Klasse `QImage` unterstützt mehrere Bildformate, die durch die Enumeration ` Format ` beschrieben werden. Dazu gehören monochrome, 8-Bit-, 32-Bit- und Alpha-Blend-Bilder, die in allen Versionen von Qt 4.x verfügbar sind.

QImage bietet eine Reihe von Funktionen, mit denen sich verschiedene Informationen über das Bild abrufen lassen. Außerdem gibt es mehrere Funktionen, die eine Transformation des Bildes ermöglichen.

QImage-Objekte können als Wert übergeben werden, da die QImage-Klasse implizite Datenfreigabe nutzt. QImage-Objekte können zudem gestreamt und verglichen werden.

Hinweis: Wenn Sie QImage-Objekte in einer statischen Qt-Build laden möchten, lesen Sie bitte das Plugin-HowTo.

Warnung: Das Zeichnen auf ein QImage mit dem Format „ QImage::Format_Indexed8 “ oder „ QImage::Format_CMYK8888 “ wird nicht unterstützt.

Lesen und Schreiben von Bilddateien

QImage bietet mehrere Möglichkeiten zum Laden einer Bilddatei: Die Datei kann beim Erstellen des QImage-Objekts geladen werden oder später mithilfe der Funktionen ` load()` oder ` loadFromData()`. QImage stellt außerdem die statische Funktion ` fromData()` zur Verfügung, die ein QImage-Objekt aus den angegebenen Daten erstellt. Beim Laden eines Bildes kann sich der Dateiname entweder auf eine tatsächliche Datei auf der Festplatte oder auf eine der in die Anwendung eingebetteten Ressourcen beziehen. Weitere Informationen zum Einbetten von Bildern und anderen Ressourcendateien in die ausführbare Datei der Anwendung finden Sie in der Übersicht zum Qt-Ressourcensystem.

Rufen Sie einfach die Funktion ` save()` auf, um ein `QImage`-Objekt zu speichern.

Die vollständige Liste der unterstützten Dateiformate ist über die Funktionen ` QImageReader::supportedImageFormats()` und ` QImageWriter::supportedImageFormats()` verfügbar. Neue Dateiformate können als Plugins hinzugefügt werden. Standardmäßig unterstützt Qt die folgenden Formate:

FormatBeschreibungUnterstützung durch Qt
BMPWindows-BitmapLesen/Schreiben
GIFGraphic Interchange Format (optional)Lesen
JPGJoint Photographic Experts GroupLesen/Schreiben
JPEGJoint Photographic Experts GroupLesen/Schreiben
PNGPortable Network GraphicsLesen/Schreiben
PBMPortable BitmapLesen
PGMPortable GraymapLesen
PPMPortable PixmapLesen/Schreiben
XBMX11-BitmapLesen/Schreiben
XPMX11-PixmapLesen/Schreiben

Bildinformationen

QImage bietet eine Reihe von Funktionen, mit denen sich verschiedene Informationen über das Bild abrufen lassen:

Verfügbare Funktionen
GeometrieDie Funktionen ` size()`, ` width()`, ` height()`, ` dotsPerMeterX()` und ` dotsPerMeterY()` liefern Informationen zur Bildgröße und zum Seitenverhältnis.

Die Funktion „ rect “ () gibt das umschließende Rechteck des Bildes zurück. Die Funktion „ valid “ () gibt an, ob ein bestimmtes Koordinatenpaar innerhalb dieses Rechtecks liegt. Die Funktion „ offset “ () gibt die Anzahl der Pixel zurück, um die das Bild relativ zu anderen Bildern versetzt werden soll; dies kann auch mithilfe der Funktion „ setOffset “ () gesteuert werden.

FarbenDie Farbe eines Pixels kann abgerufen werden, indem dessen Koordinaten an die Funktion ` pixel()` übergeben werden. Die Funktion ` pixel()` gibt die Farbe als ` QRgb `-Wert zurück, unabhängig vom Bildformat.

Bei monochromen und 8-Bit-Bildern liefern die Funktionen ` colorCount()` und ` colorTable()` Informationen über die Farbkomponenten, die zur Speicherung der Bilddaten verwendet werden: Die Funktion ` colorTable()` gibt die gesamte Farbtabelle des Bildes zurück. Um einen einzelnen Eintrag zu erhalten, verwenden Sie die Funktion „ pixelIndex()“, um den Pixelindex für ein bestimmtes Koordinatenpaar abzurufen, und anschließend die Funktion „ color()“, um die Farbe abzurufen. Beachten Sie, dass Sie, wenn Sie ein 8-Bit-Bild manuell erstellen, dem Bild ebenfalls eine gültige Farbtabelle zuweisen müssen.

Die Funktion „ hasAlphaChannel()“ gibt an, ob das Bildformat den Alphakanal berücksichtigt oder nicht. Die Funktionen „ allGray()“ und „ isGrayscale()“ geben an, ob die Farben eines Bildes ausschließlich aus Graustufen bestehen.

Siehe auch die Abschnitte „ Pixel Manipulation “ und „ Image Transformations “.

TextDie Funktion „ text()“ gibt den Bildtext zurück, der dem angegebenen Textschlüssel zugeordnet ist. Die Textschlüssel eines Bildes können mit der Funktion „ textKeys()“ abgerufen werden. Verwenden Sie die Funktion „ setText()“, um den Text eines Bildes zu ändern.
Informationen auf niedriger EbeneDie Funktion ` depth()` gibt die Farbtiefe des Bildes zurück. Die unterstützten Farbtiefen sind 1 (monochrom), 8, 16, 24 und 32 Bit. Die Funktion ` bitPlaneCount()` gibt an, wie viele dieser Bits verwendet werden. Weitere Informationen finden Sie im Abschnitt „ Image Formats “.

Die Funktionen „ format()“, „ bytesPerLine()“ und „ sizeInBytes()“ liefern Low-Level-Informationen über die im Bild gespeicherten Daten.

Die Funktion ` cacheKey()` gibt eine Zahl zurück, die den Inhalt dieses `QImage`-Objekts eindeutig identifiziert.

Pixelbearbeitung

Die Funktionen zur Bearbeitung der Bildpixel hängen vom Bildformat ab. Der Grund dafür ist, dass Monochrom- und 8-Bit-Bilder indexbasiert sind und eine Farbtabelle verwenden, während 32-Bit-Bilder ARGB-Werte direkt speichern. Weitere Informationen zu Bildformaten finden Sie im Abschnitt „ Image Formats “.

Bei einem 32-Bit-Bild kann die Funktion ` setPixel()` verwendet werden, um die Farbe des Pixels an den angegebenen Koordinaten in eine beliebige andere Farbe zu ändern, die als ARGB-Quadrupel angegeben wird. Um einen geeigneten „ QRgb “-Wert zu erzeugen, verwenden Sie die Funktion „ qRgb()“ (die den angegebenen RGB-Werten eine Standard-Alpha-Komponente hinzufügt, d. h. eine deckende Farbe erzeugt) oder die Funktion „ qRgba()“. Beispiel:

32-Bit
3×3-Pixel-Raster mit ARGB-Farbwerten
QImage image(3, 3, QImage::Format_RGB32);
QRgb value;

value = qRgb(189, 149, 39); // 0xffbd9527
image.setPixel(1, 1, value);

value = qRgb(122, 163, 39); // 0xff7aa327
image.setPixel(0, 1, value);
image.setPixel(1, 0, value);

value = qRgb(237, 187, 51); // 0xffedba31
image.setPixel(2, 1, value);

Bei 8-Bit- und monochromen Bildern ist der Pixelwert lediglich ein Index aus der Farbtabelle des Bildes. Daher kann die Funktion ` setPixel()` nur dazu verwendet werden, die Farbe des Pixels an den angegebenen Koordinaten in eine vordefinierte Farbe aus der Farbtabelle des Bildes zu ändern, d. h., sie kann lediglich den Indexwert des Pixels ändern. Um eine Farbe in der Farbtabelle eines Bildes zu ändern oder hinzuzufügen, verwenden Sie die Funktion ` setColor()`.

Ein Eintrag in der Farbtabelle ist ein ARGB-Quadrupel, das als „ QRgb “-Wert kodiert ist. Verwenden Sie die Funktionen „ qRgb()“ und „ qRgba()“, um einen geeigneten „ QRgb “-Wert für die Verwendung mit der Funktion „ setColor()“ zu erstellen. Zum Beispiel:

8-Bit
3×3-Pixel-Raster mit indizierten Farben und Farbtabelle
QImage image(3, 3, QImage::Format_Indexed8);
QRgb value;

value = qRgb(122, 163, 39); // 0xff7aa327
image.setColor(0, value);

value = qRgb(237, 187, 51); // 0xffedba31
image.setColor(1, value);

value = qRgb(189, 149, 39); // 0xffbd9527
image.setColor(2, value);

image.setPixel(0, 1, 0);
image.setPixel(1, 0, 0);
image.setPixel(1, 1, 2);
image.setPixel(2, 1, 1);

Für Bilder mit mehr als 8 Bit pro Farbkanal. Die Methoden ` setPixelColor()` und ` pixelColor()` können verwendet werden, um Werte mit ` QColor ` festzulegen und abzurufen.

QImage bietet außerdem die Funktion ` scanLine()`, die einen Zeiger auf die Pixeldaten an der Scanlinie mit dem angegebenen Index zurückgibt, sowie die Funktion ` bits()`, die einen Zeiger auf die ersten Pixeldaten zurückgibt (dies entspricht ` scanLine(0)`).

Bildformate

Jedes in einem QImage gespeicherte Pixel wird durch eine Ganzzahl dargestellt. Die Größe der Ganzzahl variiert je nach Format. QImage unterstützt mehrere Bildformate, die durch die Enumeration ` Format ` beschrieben werden.

Monochrome Bilder werden mithilfe von 1-Bit-Indizes in einer Farbtabelle mit höchstens zwei Farben gespeichert. Es gibt zwei verschiedene Arten von monochromen Bildern: Big-Endian- (MSB zuerst) oder Little-Endian- (LSB zuerst) Bitreihenfolge.

8-Bit-Bilder werden mithilfe von 8-Bit-Indizes in einer Farbtabelle gespeichert, d. h., sie haben ein einzelnes Byte pro Pixel. Die Farbtabelle ist ein ` QList<QRgb>`, und die Typdefinition ` QRgb ` entspricht einem `unsigned int`, der ein ARGB-Quadruplet im Format 0xAARRGGBB enthält.

32-Bit-Bilder haben keine Farbtabelle; stattdessen enthält jedes Pixel einen Wert vom Typ „ QRgb “. Es gibt drei verschiedene Arten von 32-Bit-Bildern, die jeweils RGB- (d. h. 0xffRRGGBB), ARGB- und vormultiplizierte ARGB-Werte speichern. Im vormultiplizierten Format werden die Rot-, Grün- und Blaukanäle mit der durch 255 geteilten Alpha-Komponente multipliziert.

Das Format eines Bildes kann mit der Funktion ` format()` abgerufen werden. Verwenden Sie die Funktionen ` convertToFormat()` und ` isGrayscale()`, um ein Bild in ein anderes Format zu konvertieren. Die Funktionen ` allGray()` und ` ()` geben an, ob ein Farbbild sicher in ein Graustufenbild konvertiert werden kann.

Bildtransformationen

QImage unterstützt eine Reihe von Funktionen zum Erstellen eines neuen Bildes, das eine transformierte Version des Originals darstellt: Die Funktion ` createAlphaMask()` erstellt und gibt eine 1-bpp-Maske aus dem Alpha-Puffer dieses Bildes zurück, und die Funktion ` createHeuristicMask()` erstellt und gibt eine 1-bpp-heuristische Maske für dieses Bild zurück. Die letztgenannte Funktion wählt eine Farbe aus einer der Ecken aus und entfernt dann Pixel dieser Farbe, beginnend an allen Rändern.

Die Funktion ` mirrored()` gibt ein Spiegelbild des Bildes in der gewünschten Richtung zurück, die Funktion ` scaled()` gibt eine auf ein Rechteck mit den gewünschten Abmessungen skalierte Kopie des Bildes zurück, und die Funktion ` rgbSwapped()` erstellt aus einem RGB-Bild ein BGR-Bild.

Die Funktionen ` scaledToWidth()` und ` scaledToHeight()` geben skalierte Kopien des Bildes zurück.

Die Funktion ` transformed()` gibt eine Kopie des Bildes zurück, die mit der angegebenen Transformationsmatrix und dem angegebenen Transformationsmodus transformiert wurde: Intern wird die Transformationsmatrix angepasst, um unerwünschte Verschiebungen auszugleichen, d. h., ` transformed()` gibt das kleinste Bild zurück, das alle transformierten Punkte des Originalbildes enthält. Die statische Funktion ` trueMatrix()` gibt die tatsächliche Matrix zurück, die zur Transformation des Bildes verwendet wurde.

Es gibt außerdem Funktionen zum Ändern von Bildattributen an Ort und Stelle:

FunktionBeschreibung
setDotsPerMeterX()Legt das Seitenverhältnis fest, indem die Anzahl der Pixel festgelegt wird, die horizontal in einen physikalischen Meter passen.
setDotsPerMeterY()Legt das Seitenverhältnis fest, indem die Anzahl der Pixel festgelegt wird, die vertikal in einen physikalischen Meter passen.
fill()Füllt das gesamte Bild mit dem angegebenen Pixelwert.
invertPixels()Invertiert alle Pixelwerte im Bild unter Verwendung des angegebenen „ InvertMode “-Werts.
setColorTable()Legt die Farbtabelle fest, die zur Umwandlung von Farbindizes verwendet wird. Nur für monochrome und 8-Bit-Formate.
setColorCount()Passen Sie die Größe der Farbtabelle an. Nur für monochrome und 8-Bit-Formate.

Siehe auch „ QImageReader“ , „ QImageWriter “, „ QPixmap “, „ QSvgRenderer “, „Beispiel zur Bildkomposition“ und „Beispiel zum Kritzeln“.

Dokumentation zu Mitgliedstypen

enum QImage::Format

Die folgenden Bildformate sind in Qt verfügbar. Beachten Sie die Hinweise nach der Tabelle.

KonstanteWertBeschreibung
QImage::Format_Invalid0Das Bild ist ungültig.
QImage::Format_Mono1Das Bild wird mit 1 Bit pro Pixel gespeichert. Die Bytes werden mit dem höchstwertigen Bit (MSB) voran gepackt.
QImage::Format_MonoLSB2Das Bild wird mit 1 Bit pro Pixel gespeichert. Die Bytes werden mit dem niedrigstwertigen Bit (LSB) zuerst gepackt.
QImage::Format_Indexed83Das Bild wird unter Verwendung von 8-Bit-Indizes in einer Farbtabelle gespeichert.
QImage::Format_RGB324Das Bild wird im 32-Bit-RGB-Format (0xffRRGGBB) gespeichert.
QImage::Format_ARGB325Das Bild wird im 32-Bit-ARGB-Format (0xAARRGGBB) gespeichert.
QImage::Format_ARGB32_Premultiplied6Das Bild wird im vormultiplizierten 32-Bit-ARGB-Format (0xAARRGGBB) gespeichert, d. h., die Rot-, Grün- und Blaukanäle werden mit der durch 255 geteilten Alpha-Komponente multipliziert. (Wenn RR, GG oder BB einen höheren Wert als der Alphakanal haben, sind die Ergebnisse undefiniert.) Bestimmte Operationen (wie z. B. die Bildkomposition mittels Alpha-Blending) sind mit vorvermehrtem ARGB32 schneller als mit einfachem ARGB32.
QImage::Format_RGB167Das Bild wird im 16-Bit-RGB-Format (5-6-5) gespeichert.
QImage::Format_ARGB8565_Premultiplied8Das Bild wird im vormultiplizierten 24-Bit-ARGB-Format (8-5-6-5) gespeichert.
QImage::Format_RGB6669Das Bild wird im 24-Bit-RGB-Format (6-6-6) gespeichert. Die ungenutzten höchstwertigen Bits sind immer Null.
QImage::Format_ARGB6666_Premultiplied10Das Bild wird im vormultiplizierten 24-Bit-ARGB-Format (6-6-6-6) gespeichert.
QImage::Format_RGB55511Das Bild wird im 16-Bit-RGB-Format (5-5-5) gespeichert. Das ungenutzte höchstwertige Bit ist immer Null.
QImage::Format_ARGB8555_Premultiplied12Das Bild wird im vormultiplizierten 24-Bit-ARGB-Format (8-5-5-5) gespeichert.
QImage::Format_RGB88813Das Bild wird im 24-Bit-RGB-Format (8-8-8) gespeichert.
QImage::Format_RGB44414Das Bild wird im 16-Bit-RGB-Format (4-4-4) gespeichert. Die ungenutzten Bits sind immer Null.
QImage::Format_ARGB4444_Premultiplied15Das Bild wird im vormultiplizierten 16-Bit-ARGB-Format (4-4-4-4) gespeichert.
QImage::Format_RGBX8888 (since Qt 5.2)16Das Bild wird im 32-Bit-RGB(x)-Format mit Byte-Reihenfolge (8-8-8-8) gespeichert. Dies entspricht dem Format „Format_RGBA8888“, mit der Ausnahme, dass der Alpha-Wert immer 255 betragen muss.
QImage::Format_RGBA8888 (since Qt 5.2)17Das Bild wird im 32-Bit-RGBA-Format mit Byte-Reihenfolge (8-8-8-8) gespeichert.
QImage::Format_RGBA8888_Premultiplied (since Qt 5.2)18Das Bild wird im vormultiplizierten 32-Bit-RGBA-Format mit Byte-Reihenfolge (8-8-8-8) gespeichert.
QImage::Format_BGR30 (since Qt 5.4)19Das Bild wird im 32-Bit-BGR-Format (x-10-10-10) gespeichert.
QImage::Format_A2BGR30_Premultiplied (since Qt 5.4)20Das Bild wird im 32-Bit-ABGR-Format mit vorvervielfachtem Alpha (2-10-10-10) gespeichert.
QImage::Format_RGB30 (since Qt 5.4)21Das Bild wird im 32-Bit-RGB-Format (x-10-10-10) gespeichert.
QImage::Format_A2RGB30_Premultiplied (since Qt 5.4)22Das Bild wird im 32-Bit-ARGB-Format mit vorvervielfachten Werten (2-10-10-10) gespeichert.
QImage::Format_Alpha8 (since Qt 5.5)23Das Bild wird im 8-Bit-Alpha-Format gespeichert.
QImage::Format_Grayscale8 (since Qt 5.5)24Das Bild wird im 8-Bit-Graustufenformat gespeichert.
QImage::Format_Grayscale16 (since Qt 5.13)28Das Bild wird im 16-Bit-Graustufenformat gespeichert.
QImage::Format_RGBX64 (since Qt 5.12)25Das Bild wird im 64-Bit-RGB(x)-Format mit Halfword-Reihenfolge (16-16-16-16) gespeichert. Dies entspricht dem Format_RGBA64, mit der Ausnahme, dass der Alpha-Wert immer 65535 betragen muss.
QImage::Format_RGBA64 (since Qt 5.12)26Das Bild wird in einem 64-Bit-RGBA-Format mit Halfword-Reihenfolge (16-16-16-16) gespeichert.
QImage::Format_RGBA64_Premultiplied (since Qt 5.12)27Das Bild wird in einem vormultiplizierten 64-Bit-RGBA-Format mit Halbwortreihenfolge (16-16-16-16) gespeichert.
QImage::Format_BGR888 (since Qt 5.14)29Das Bild wird im 24-Bit-BGR-Format gespeichert.
QImage::Format_RGBX16FPx4 (since Qt 6.2)30Das Bild wird im RGBx-Format mit vier 16-Bit-Halbwörtern in Gleitkomma-Darstellung (16FP-16FP-16FP-16FP) gespeichert. Dies entspricht dem Format_RGBA16FPx4, mit der Ausnahme, dass der Alpha-Wert immer 1,0 betragen muss.
QImage::Format_RGBA16FPx4 (since Qt 6.2)31Das Bild wird im RGBA-Format mit vier 16-Bit-Halbwort-Gleitkommazahlen (16FP-16FP-16FP-16FP) gespeichert.
QImage::Format_RGBA16FPx4_Premultiplied (since Qt 6.2)32Das Bild wird im vorvervielfachten RGBA-Format mit vier 16-Bit-Halbwörtern im Gleitkomma-Format (16FP-16FP-16FP-16FP) gespeichert.
QImage::Format_RGBX32FPx4 (since Qt 6.2)33Das Bild wird im Format „vier 32-Bit-Gleitkomma-RGBx“ (32FP-32FP-32FP-32FP) gespeichert. Dies entspricht dem Format „Format_RGBA32FPx4“, mit der Ausnahme, dass der Alpha-Wert immer 1,0 betragen muss.
QImage::Format_RGBA32FPx4 (since Qt 6.2)34Das Bild wird im RGBA-Format mit vier 32-Bit-Gleitkomma-Halbwörtern (32FP-32FP-32FP-32FP) gespeichert.
QImage::Format_RGBA32FPx4_Premultiplied (since Qt 6.2)35Das Bild wird in einem vormultiplizierten Format mit vier 32-Bit-Gleitkomma-RGBA-Werten (32FP-32FP-32FP-32FP) gespeichert.
QImage::Format_CMYK8888 (since Qt 6.8)36Das Bild wird in einem 32-Bit-CMYK-Format mit Byte-Reihenfolge gespeichert.

Byte-geordnete Formate haben eine Byte-Reihenfolge ( QPixelFormat::typeInterpretation) von QPixelFormat::UnsignedByte, was bedeutet, dass die einzelnen Farbkomponenten in einer festen Reihenfolge im Speicher abgelegt werden, z. B. 0xRR, 0xGG, 0xBB, 0xAA, unabhängig vom Endianness der Plattform. Diese Formate sollten als einzelne Bytes gelesen oder, wenn sie in größeren Blöcken gelesen werden, als „ QPixelFormat::BigEndian “ interpretiert werden.

Hinweis: Das Zeichnen in ein „ QImage “ mit dem Format „QImage::Format_Indexed8“ oder „QImage::Format_CMYK8888“ wird nicht unterstützt.

Hinweis: Vermeiden Sie es, die meisten dieser Formate direkt mit ` QPainter` zu rendern. Das Rendern ist am besten für die Formate ` Format_RGB32 ` und ` Format_ARGB32_Premultiplied ` optimiert, gefolgt von den Formaten ` Format_RGB16`, ` Format_RGBX8888`, ` Format_RGBA8888_Premultiplied`, ` Format_RGBX64 ` und ` Format_RGBA64_Premultiplied `.

Siehe auch format() und convertToFormat().

enum QImage::InvertMode

Dieser Enum-Typ dient dazu, zu beschreiben, wie Pixelwerte in der Funktion „ invertPixels()“ invertiert werden sollen.

KonstanteWertBeschreibung
QImage::InvertRgb0Nur die RGB-Werte invertieren und den Alphakanal unverändert lassen.
QImage::InvertRgba1Invertiert alle Kanäle, einschließlich des Alphakanals.

Siehe auch „ invertPixels()“.

Dokumentation der Member-Funktionen

[noexcept] QImage::QImage()

Erzeugt ein Nullbild.

Siehe auch ` isNull()`.

[explicit] QImage::QImage(const char *const[] xpm)

Erstellt ein Bild aus dem angegebenen „ xpm “-Bild.

Stellen Sie sicher, dass es sich um ein gültiges XPM-Bild handelt. Fehler werden stillschweigend ignoriert.

Beachten Sie, dass es möglich ist, die XPM-Variable durch eine ungewöhnliche Deklaration etwas zu komprimieren:

static const char * const start_xpm[] = {
    "16 15 8 1",
    "a c #cec6bd",
    // etc.
};

Das zusätzliche ` const ` macht die gesamte Definition schreibgeschützt, was etwas effizienter ist (z. B. wenn sich der Code in einer gemeinsam genutzten Bibliothek befindet) und die Speicherung im ROM zusammen mit der Anwendung ermöglicht.

QImage::QImage(const QSize &size, QImage::Format format)

Erstellt ein Image mit den angegebenen Werten für „ size “ und „ format “.

Wird kein Speicher zugewiesen, wird ein null -Bild zurückgegeben.

Warnung: Dadurch wird ein `QImage` mit nicht initialisierten Daten erstellt. Rufen Sie ` fill()` auf, um das Bild mit einem geeigneten Pixelwert zu füllen, bevor Sie es mit ` QPainter` zeichnen.

[explicit] QImage::QImage(const QString &fileName, const char *format = nullptr)

Erstellt ein Bild und versucht, das Bild aus der Datei mit der angegebenen URL „ fileName “ zu laden.

Der Loader versucht, das Bild unter Verwendung der angegebenen Bildformate ( format) zu lesen. Wenn das Bildformat ( format ) nicht angegeben ist (was der Standard ist), wird es anhand der Dateiendung und des Headers automatisch ermittelt. Weitere Informationen finden Sie unter {QImageReader::setAutoDetectImageFormat()}{QImageReader}.

Wenn das Laden des Bildes fehlgeschlagen ist, ist dieses Objekt ein Null-Bild.

Der Dateiname kann sich entweder auf eine tatsächliche Datei auf der Festplatte oder auf eine der in die Anwendung eingebetteten Ressourcen beziehen. Weitere Informationen zum Einbetten von Bildern und anderen Ressourcendateien in die ausführbare Datei der Anwendung finden Sie in der Übersicht zum Ressourcensystem.

Siehe auch isNull() und Reading and Writing Image Files.

QImage::QImage(int width, int height, QImage::Format format)

Erstellt ein Image mit den angegebenen Werten für „ width “, „ height “ und „ format “.

Wird kein Speicher zugewiesen, wird ein null -Bild zurückgegeben.

Warnung: Dadurch wird ein `QImage` mit nicht initialisierten Daten erstellt. Rufen Sie ` fill()` auf, um das Bild mit einem geeigneten Pixelwert zu füllen, bevor Sie es mit ` QPainter` zeichnen.

QImage::QImage(const uchar *data, int width, int height, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)

Erstellt ein Bild mit den angegebenen Werten für „ width “, „ height “ und „ format “, wobei ein vorhandener schreibgeschützter Speicherpuffer „ data “ verwendet wird. Die Werte für „ width “ und „ height “ müssen in Pixeln angegeben werden, „ data “ muss 32-Bit-ausgerichtet sein, und jede Scanlinie der Daten im Bild muss ebenfalls 32-Bit-ausgerichtet sein.

Der Puffer muss während der gesamten Lebensdauer des QImage und aller Kopien, die nicht verändert oder anderweitig vom Originalpuffer getrennt wurden, gültig bleiben. Das Bild löscht den Puffer bei seiner Zerstörung nicht. Sie können einen Funktionszeiger ` cleanupFunction ` zusammen mit einem zusätzlichen Zeiger ` cleanupInfo ` angeben, der aufgerufen wird, wenn die letzte Kopie zerstört wird.

Wenn format ein indiziertes Farbformat ist, ist die Farbtabelle des Bildes anfangs leer und muss vor der Verwendung des Bildes mit setColorCount() oder setColorTable() ausreichend erweitert werden.

Im Gegensatz zum ähnlichen QImage-Konstruktor, der einen nicht-konstanten Datenpuffer entgegennimmt, verändert diese Version niemals den Inhalt des Puffers. Der Aufruf von ` QImage::bits()` liefert beispielsweise eine tiefe Kopie des Bildes und nicht den an den Konstruktor übergebenen Puffer. Dies ermöglicht die effiziente Erstellung eines QImage aus Rohdaten, ohne dass die Rohdaten verändert werden können.

QImage::QImage(uchar *data, int width, int height, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)

Erstellt ein Bild mit den angegebenen Werten für „ width “, „ height “ und „ format “, wobei ein vorhandener Speicherpuffer „ data “ verwendet wird. Die Werte für „ width “ und „ height “ müssen in Pixeln angegeben werden, „ data “ muss 32-Bit-ausgerichtet sein, und jede Scanlinie der Daten im Bild muss ebenfalls 32-Bit-ausgerichtet sein.

Der Puffer muss während der gesamten Lebensdauer des QImage und aller Kopien, die nicht geändert oder anderweitig vom ursprünglichen Puffer getrennt wurden, gültig bleiben. Das Bild löscht den Puffer bei seiner Zerstörung nicht. Sie können einen Funktionszeiger cleanupFunction zusammen mit einem zusätzlichen Zeiger cleanupInfo bereitstellen, der aufgerufen wird, wenn die letzte Kopie zerstört wird.

Wenn „ format “ ein indexiertes Farbformat ist, ist die Farbtabelle des Bildes anfangs leer und muss vor der Verwendung des Bildes mit „ setColorCount()“ oder „ setColorTable()“ ausreichend erweitert werden.

QImage::QImage(const uchar *data, int width, int height, qsizetype bytesPerLine, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)

Erstellt ein Bild mit den angegebenen Werten für „ width “, „ height “ und „ format “, wobei ein vorhandener Speicherpuffer „ data “ verwendet wird. Die Werte für „ width “ und „ height “ müssen in Pixeln angegeben werden. „ bytesPerLine “ gibt die Anzahl der Bytes pro Zeile (Stride) an.

Der Puffer muss während der gesamten Lebensdauer des QImage und aller Kopien, die nicht verändert oder anderweitig vom ursprünglichen Puffer getrennt wurden, gültig bleiben. Das Bild löscht den Puffer bei seiner Zerstörung nicht. Sie können einen Funktionszeiger cleanupFunction zusammen mit einem zusätzlichen Zeiger cleanupInfo angeben, der aufgerufen wird, wenn die letzte Kopie zerstört wird.

Wenn format ein indiziertes Farbformat ist, ist die Farbtabelle des Bildes anfangs leer und muss vor der Verwendung des Bildes mit setColorCount() oder setColorTable() ausreichend erweitert werden.

Im Gegensatz zum ähnlichen QImage-Konstruktor, der einen nicht-konstanten Datenpuffer entgegennimmt, verändert diese Version niemals den Inhalt des Puffers. Der Aufruf von ` QImage::bits()` liefert beispielsweise eine tiefe Kopie des Bildes zurück und nicht den an den Konstruktor übergebenen Puffer. Dies ermöglicht die effiziente Erstellung eines QImage aus Rohdaten, ohne dass die Rohdaten verändert werden können.

QImage::QImage(uchar *data, int width, int height, qsizetype bytesPerLine, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)

Erstellt ein Bild mit den angegebenen Werten für „ width “, „ height “ und „ format “, wobei ein vorhandener Speicherpuffer „ data “ verwendet wird. Die Werte für „ width “ und „ height “ müssen in Pixeln angegeben werden. „ bytesPerLine “ gibt die Anzahl der Bytes pro Zeile (Stride) an.

Der Puffer muss während der gesamten Lebensdauer des QImage und aller Kopien, die nicht verändert oder anderweitig vom ursprünglichen Puffer getrennt wurden, gültig bleiben. Das Bild löscht den Puffer bei seiner Zerstörung nicht. Sie können einen Funktionszeiger cleanupFunction zusammen mit einem zusätzlichen Zeiger cleanupInfo bereitstellen, der aufgerufen wird, wenn die letzte Kopie zerstört wird.

Wenn format ein indexiertes Farbformat ist, ist die Farbtabelle des Bildes anfangs leer und muss vor der Verwendung des Bildes mit setColorCount() oder setColorTable() ausreichend erweitert werden.

QImage::QImage(const QImage &image)

Erstellt eine flache Kopie des angegebenen „ image “.

Weitere Informationen zu flachen Kopien finden Sie in der Dokumentation zu impliziter Datenfreigabe.

Siehe auch „ copy()“.

[noexcept] QImage::QImage(QImage &&other)

Erstellt eine QImage-Instanz und sorgt dafür, dass diese auf dasselbe Objekt verweist, auf das zuvor „ other “ verwiesen hat.

[virtual noexcept] QImage::~QImage()

Löscht das Bild und räumt auf.

bool QImage::allGray() const

Gibt „ true “ zurück, wenn alle Farben im Bild Graustufen sind (d. h., ihre Rot-, Grün- und Blaukomponenten sind gleich); andernfalls „false“.

Beachten Sie, dass diese Funktion bei Bildern ohne Farbtabelle langsam ist.

Siehe auch isGrayscale().

void QImage::applyColorTransform(const QColorTransform &transform)

Wendet die Farbtransformation „ transform “ auf alle Pixel im Bild an.

[since 6.8] void QImage::applyColorTransform(const QColorTransform &transform, QImage::Format toFormat, Qt::ImageConversionFlags flags = Qt::AutoColor)

Wendet die Farbtransformation „ transform “ auf alle Pixel des Bildes an und konvertiert das Bildformat in „ toFormat “.

Die angegebenen Bildkonvertierungs flags en steuern, wie die Bilddaten während des Formatkonvertierungsprozesses behandelt werden.

Diese Funktion wurde in Qt 6.8 eingeführt.

int QImage::bitPlaneCount() const

Gibt die Anzahl der Bit-Ebenen im Bild zurück.

Die Anzahl der Bit-Ebenen entspricht der Anzahl der Bits, die pro Pixel für Farb- und Transparenzinformationen zur Verfügung stehen. Diese unterscheidet sich von der Farbtiefe (d. h., sie ist kleiner als diese), wenn das Bildformat ungenutzte Bits enthält.

Siehe auch depth(), format() und Image Formats.

uchar *QImage::bits()

Gibt einen Zeiger auf die ersten Pixeldaten zurück. Dies entspricht „ scanLine(0)“.

Beachten Sie, dass „ QImage “ implizite Datenfreigabe verwendet. Diese Funktion führt eine tiefe Kopie der freigegebenen Pixeldaten durch und stellt so sicher, dass nur diese „ QImage “ den aktuellen Rückgabewert verwendet.

Siehe auch „ scanLine()“, „ sizeInBytes()“ und „ constBits()“.

const uchar *QImage::bits() const

Beachten Sie, dass „ QImage “ implizite Datenfreigabe verwendet, diese Funktion jedoch keine tiefe Kopie der freigegebenen Pixeldaten durchführt, da die zurückgegebenen Daten vom Typ „const“ sind.

Dies ist eine überladene Funktion.

qsizetype QImage::bytesPerLine() const

Gibt die Anzahl der Bytes pro Bild-Scanlinie zurück.

Dies entspricht ` sizeInBytes()` / ` height()`, wenn ` height()` ungleich Null ist.

Siehe auch ` scanLine()`.

qint64 QImage::cacheKey() const

Gibt eine Nummer zurück, die den Inhalt dieses „ QImage “-Objekts identifiziert. Verschiedene „ QImage “-Objekte können nur dann denselben Schlüssel haben, wenn sie sich auf denselben Inhalt beziehen.

Der Schlüssel ändert sich, wenn das Bild verändert wird.

QRgb QImage::color(int i) const

Gibt die Farbe in der Farbtabelle am Index i zurück. Die erste Farbe befindet sich am Index 0.

Die Farben in der Farbtabelle eines Bildes werden als ARGB-Quadrupletts (QRgb) angegeben. Verwenden Sie die Funktionen „ qAlpha()“, „ qRed()“, „ qGreen()“ und „ qBlue()“, um die Komponenten des Farbwerts abzurufen.

Siehe auch setColor(), pixelIndex() und Pixel Manipulation.

int QImage::colorCount() const

Gibt die Größe der Farbtabelle für das Bild zurück.

Beachten Sie, dass colorCount() für 32-bpp-Bilder den Wert 0 zurückgibt, da diese Bilder keine Farbtabellen verwenden, sondern die Pixelwerte stattdessen als ARGB-Quadruplet-Werte kodieren.

Siehe auch ` setColorCount()` und ` Image Information`.

QColorSpace QImage::colorSpace() const

Gibt den Farbraum des Bildes zurück, sofern ein Farbraum definiert ist.

Siehe auch ` setColorSpace()`.

QList<QRgb> QImage::colorTable() const

Gibt eine Liste der in der Farbtabelle des Bildes enthaltenen Farben zurück oder eine leere Liste, wenn das Bild keine Farbtabelle hat

Siehe auch setColorTable(), colorCount() und color().

[since 6.4] QImage QImage::colorTransformed(const QColorTransform &transform) const &

Gibt die Bildfarbe zurück, die mithilfe von „ transform “ auf alle Pixel des Bildes angewendet wurde.

Hinweis: Wenn „ transform “ einen Quellfarbraum hat, der mit dem Format dieses Bildes nicht kompatibel ist, wird ein Null- QImage zurückgegeben. Wenn „ transform “ einen Zielfarbraum hat, der mit dem Format dieses Bildes nicht kompatibel ist, wird das Bild ebenfalls in ein kompatibles Format konvertiert. Weitere Möglichkeiten zur Steuerung der Wahl des Zielpixelformats finden Sie in der Überladung dieser Methode mit drei Argumenten.

Diese Funktion wurde in Qt 6.4 eingeführt.

Siehe auch ` applyColorTransform()`.

[since 6.8] QImage QImage::colorTransformed(const QColorTransform &transform, QImage::Format toFormat, Qt::ImageConversionFlags flags = Qt::AutoColor) const &

Gibt die Bildfarbe zurück, die mithilfe von „ transform “ auf alle Pixel im Bild angewendet wurde, und liefert ein Bild im Format „ toFormat “.

Die angegebenen Bildkonvertierungs- flags en steuern, wie die Bilddaten während des Formatkonvertierungsprozesses behandelt werden.

Hinweis: Wenn „ transform “ einen Quellfarbraum aufweist, der mit dem Format dieses Bildes nicht kompatibel ist, oder einen Zielfarbraum, der nicht mit „ toFormat “ kompatibel ist, wird ein Null- QImage zurückgegeben.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch ` applyColorTransform()`.

[since 6.4] QImage QImage::colorTransformed(const QColorTransform &transform) &&

Gibt die Bildfarbe zurück, die mithilfe von „ transform “ auf alle Pixel im Bild angewendet wurde.

Dies ist eine überladene Funktion.

Diese Funktion wurde in Qt 6.4 eingeführt.

Siehe auch ` applyColorTransform()`.

[since 6.8] QImage QImage::colorTransformed(const QColorTransform &transform, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&

Gibt die Bildfarbe zurück, die mithilfe von „ transform “ auf alle Pixel im Bild angewendet wurde.

Dies ist eine überladene Funktion.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch ` applyColorTransform()`.

const uchar *QImage::constBits() const

Gibt einen Zeiger auf die ersten Pixeldaten zurück.

Beachten Sie, dass „ QImage “ implizite Datenfreigabe verwendet, diese Funktion jedoch keine tiefe Kopie der freigegebenen Pixeldaten durchführt, da die zurückgegebenen Daten vom Typ „const“ sind.

Siehe auch „ bits()“ und „ constScanLine()“.

const uchar *QImage::constScanLine(int i) const

Gibt einen Zeiger auf die Pixeldaten der Scanlinie mit dem Index i zurück. Die erste Scanlinie hat den Index 0.

Die Scanline-Daten sind mindestens 32-Bit-ausgerichtet. Bei 64-Bit-Formaten folgt die Ausrichtung der nativen Ausrichtung von 64-Bit-Ganzzahlen (64-Bit für die meisten Plattformen, auf i386 jedoch 32-Bit).

Beachten Sie, dass „ QImage “ implizites Daten-Sharing verwendet, diese Funktion jedoch keine tiefe Kopie der gemeinsam genutzten Pixeldaten durchführt, da die zurückgegebenen Daten „const“ sind.

Siehe auch ` scanLine()` und ` constBits()`.

void QImage::convertTo(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor)

Konvertiert das Bild an Ort und Stelle in das angegebene format und trennt es gegebenenfalls ab.

Die angegebenen Bildkonvertierungs flags en steuern, wie die Bilddaten während des Konvertierungsprozesses behandelt werden.

Siehe auch ` convertedTo()`.

void QImage::convertToColorSpace(const QColorSpace &colorSpace)

Konvertiert das Bild in den Farbraum „ colorSpace “.

Wenn das Bild keinen gültigen Farbraum hat, führt die Methode keine Aktion aus.

Hinweis: Wenn „ colorSpace “ nicht mit dem aktuellen Format kompatibel ist, wird das Bild in ein kompatibles Format konvertiert.

Siehe auch „ convertedToColorSpace()“ und „ setColorSpace()“.

[since 6.8] void QImage::convertToColorSpace(const QColorSpace &colorSpace, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor)

Konvertiert das Bild in die Formate „ colorSpace “ und „ format “.

Wenn das Bild keinen gültigen Farbraum aufweist, führt die Methode keine Aktion aus; dasselbe gilt, wenn der Farbraum nicht mit dem Format kompatibel ist.

Die angegebenen Bildkonvertierungs flags en steuern, wie die Bilddaten während des Formatkonvertierungsprozesses behandelt werden.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch convertedToColorSpace() und setColorSpace().

QImage QImage::convertToFormat(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&

QImage QImage::convertToFormat(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) const &

Gibt eine Kopie des Bildes im angegebenen format zurück.

Die angegebenen Bildkonvertierungs flags en steuern, wie die Bilddaten während des Konvertierungsprozesses behandelt werden.

Siehe auch ` convertTo()` und ` Image Formats`.

QImage QImage::convertToFormat(QImage::Format format, const QList<QRgb> &colorTable, Qt::ImageConversionFlags flags = Qt::AutoColor) const

Gibt eine Kopie des Bildes zurück, das unter Verwendung des angegebenen „ colorTable “ in das angegebene „ format “ konvertiert wurde.

Die Konvertierung von RGB-Formaten in indizierte Formate ist ein ressourcenintensiver Vorgang und erfolgt nach dem einfachen „Nearest-Color“-Verfahren ohne Dithering.

Dies ist eine überladene Funktion.

[since 6.0] QImage QImage::convertedTo(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&

[since 6.0] QImage QImage::convertedTo(QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) const &

Gibt eine Kopie des Bildes in der angegebenen Bild format zurück.

Die angegebenen Bildkonvertierungs flags en steuern, wie die Bilddaten während des Konvertierungsprozesses behandelt werden.

Diese Funktionen wurden in Qt 6.0 eingeführt.

Siehe auch ` convertTo()` und ` Image Formats`.

QImage QImage::convertedToColorSpace(const QColorSpace &colorSpace) const

Gibt das in den Farbraum „ colorSpace “ konvertierte Bild zurück.

Wenn das Bild keinen gültigen Farbraum hat, wird ein Nullwert für ` QImage ` zurückgegeben.

Hinweis: Wenn „ colorSpace “ nicht mit dem aktuellen Format kompatibel ist, wird das zurückgegebene Bild ebenfalls in ein Format konvertiert, das kompatibel ist. Für mehr Kontrolle über das Format des zurückgegebenen Bildes siehe die Überladung dieser Methode mit drei Argumenten.

Siehe auch ` convertToColorSpace()` und ` colorTransformed()`.

[since 6.8] QImage QImage::convertedToColorSpace(const QColorSpace &colorSpace, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) &&

[since 6.8] QImage QImage::convertedToColorSpace(const QColorSpace &colorSpace, QImage::Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) const &

Gibt das Bild zurück, das in die Farbräume „ colorSpace “ und „ format “ konvertiert wurde.

Wenn das Bild keinen gültigen Farbraum hat, wird ein null- QImage zurückgegeben.

Die angegebenen Bildkonvertierungs flags en steuern, wie die Bilddaten während des Formatkonvertierungsprozesses behandelt werden.

Diese Funktionen wurden in Qt 6.8 eingeführt.

Siehe auch colorTransformed().

QImage QImage::copy(const QRect &rectangle = QRect()) const

Gibt einen Teilbereich des Bildes als neues Bild zurück.

Das zurückgegebene Bild wird von der Position (rectangle.x(), rectangle.y()) in diesem Bild kopiert und hat stets die Größe des angegebenen rectangle.

In Bereichen außerhalb dieses Bildes werden die Pixel auf 0 gesetzt. Bei 32-Bit-RGB-Bildern bedeutet dies Schwarz; bei 32-Bit-ARGB-Bildern bedeutet dies transparentes Schwarz; bei 8-Bit-Bildern bedeutet dies die Farbe mit dem Index 0 in der Farbtabelle, die beliebig sein kann; bei 1-Bit-Bildern bedeutet dies Qt::color0.

Ist das angegebene Rechteck „ rectangle “ ein Null-Rechteck, wird das gesamte Bild kopiert.

Siehe auch ` QImage()`.

QImage QImage::copy(int x, int y, int width, int height) const

Das zurückgegebene Bild wird von der Position (x, y) in diesem Bild kopiert und weist stets die angegebenen Werte width und height auf. In Bereichen außerhalb dieses Bildes werden die Pixel auf 0 gesetzt.

Dies ist eine überladene Funktion.

QImage QImage::createAlphaMask(Qt::ImageConversionFlags flags = Qt::AutoColor) const

Erstellt und gibt eine 1-bpp-Maske aus dem Alpha-Puffer dieses Bildes zurück. Gibt ein Nullbild zurück, wenn das Bildformat „ QImage::Format_RGB32 “ ist.

Das Argument ` flags ` ist ein bitweises ODER aus den Flags ` Qt::ImageConversionFlags` und steuert den Konvertierungsprozess. Wird für die Flags der Wert 0 übergeben, werden alle Standardoptionen gesetzt.

Das zurückgegebene Bild hat die Bitreihenfolge „Little-Endian“ (d. h., das Bildformat ist „ QImage::Format_MonoLSB “), die Sie mit der Funktion „ convertToFormat()“ in „Big-Endian“ (QImage::Format_Mono) konvertieren können.

Siehe auch createHeuristicMask() und Image Transformations.

QImage QImage::createHeuristicMask(bool clipTight = true) const

Erstellt eine heuristische Maske mit 1 bpp für dieses Bild und gibt sie zurück.

Die Funktion wählt eine Farbe aus einer der Ecken aus und entfernt dann Pixel dieser Farbe, beginnend an allen Rändern. Die vier Ecken entscheiden gemeinsam, welche Farbe ausgeblendet werden soll. Bei Stimmengleichheit (was in der Regel bedeutet, dass diese Funktion für das Bild nicht anwendbar ist) ist das Ergebnis willkürlich.

Das zurückgegebene Bild hat eine Little-Endian-Bitreihenfolge (d. h., das Bildformat lautet „ QImage::Format_MonoLSB “), die Sie mithilfe der Funktion „ convertToFormat()“ in Big-Endian („QImage::Format_Mono “) konvertieren können.

Ist clipTight wahr (Standard), ist die Maske gerade groß genug, um die Pixel abzudecken; andernfalls ist die Maske größer als die Datenpixel.

Beachten Sie, dass diese Funktion den Alpha-Puffer ignoriert.

Siehe auch createAlphaMask() und Image Transformations.

QImage QImage::createMaskFromColor(QRgb color, Qt::MaskMode mode = Qt::MaskInColor) const

Erstellt und gibt eine Maske für dieses Bild basierend auf dem angegebenen Wert „ color “ zurück. Wenn „ mode “ auf „MaskInColor“ gesetzt ist (Standardwert), werden alle Pixel, die der Farbe „ color “ entsprechen, in der Maske als undurchsichtig dargestellt. Wenn „ mode “ auf „MaskOutColor“ gesetzt ist, werden alle Pixel, die der angegebenen Farbe entsprechen, als transparent dargestellt.

Siehe auch „ createAlphaMask()“ und „ createHeuristicMask()“.

int QImage::depth() const

Gibt die Bildtiefe zurück.

Die Bildtiefe ist die Anzahl der Bits, die zur Speicherung eines einzelnen Pixels verwendet werden, auch „Bits pro Pixel“ (bpp) genannt.

Die unterstützten Farbtiefen sind 1, 8, 16, 24, 32 und 64.

Siehe auch bitPlaneCount(), convertToFormat(), Image Formats und Image Information.

[since 6.2] QSizeF QImage::deviceIndependentSize() const

Gibt die Größe des Bildes in geräteunabhängigen Pixeln zurück.

Dieser Wert sollte verwendet werden, wenn die Bildgröße in Berechnungen zur Größe der Benutzeroberfläche herangezogen wird.

Der Rückgabewert entspricht image.size() / image.devicePixelRatio().

Diese Funktion wurde in Qt 6.2 eingeführt.

qreal QImage::devicePixelRatio() const

Gibt das Gerätepixelverhältnis für das Bild zurück. Dies ist das Verhältnis zwischen Gerätepixeln und geräteunabhängigen Pixeln.

Verwenden Sie diese Funktion bei der Berechnung der Layout-Geometrie auf Basis der Bildgröße: ` QSize layoutSize = image.size() / image.devicePixelRatio()`

Der Standardwert ist 1,0.

Siehe auch „ setDevicePixelRatio()“ und „ QImageReader “.

int QImage::dotsPerMeterX() const

Gibt die Anzahl der Pixel zurück, die horizontal in einen physikalischen Meter passen. Zusammen mit dotsPerMeterY() definiert diese Zahl den beabsichtigten Maßstab und das Seitenverhältnis des Bildes.

Siehe auch setDotsPerMeterX() und Image Information.

int QImage::dotsPerMeterY() const

Gibt die Anzahl der Pixel zurück, die vertikal in einen physikalischen Meter passen. Zusammen mit dotsPerMeterX() definiert diese Zahl den beabsichtigten Maßstab und das Seitenverhältnis des Bildes.

Siehe auch „ setDotsPerMeterY()“ und „ Image Information “.

void QImage::fill(uint pixelValue)

Füllt das gesamte Bild mit dem angegebenen Wert „ pixelValue “.

Wenn die Tiefe dieses Bildes 1 beträgt, wird nur das niedrigste Bit verwendet. Wenn Sie „fill(0)“, „fill(2)“ usw. angeben, wird das Bild mit Nullen gefüllt. Wenn Sie „fill(1)“, „fill(3)“ usw. angeben, wird das Bild mit Einsen gefüllt. Bei einer Farbtiefe von 8 werden die untersten 8 Bits verwendet, bei einer Farbtiefe von 16 die untersten 16 Bits.

Ist die Bildtiefe größer als 32 Bit, ist das Ergebnis undefiniert.

Hinweis: Es gibt keine entsprechenden Getter-Funktionen, allerdings gibt „ QImage::pixelIndex()“ bei indizierten Formaten denselben Wert zurück und „ QImage::pixel()“ bei den Formaten RGB32, ARGB32 und ARGB32PM.

Siehe auch depth() und Image Transformations.

void QImage::fill(Qt::GlobalColor color)

Füllt das Bild mit der angegebenen Farbe „ color “, die als globale Standardfarbe definiert ist.

Dies ist eine überladene Funktion.

void QImage::fill(const QColor &color)

Füllt das gesamte Bild mit dem angegebenen „ color “ auf.

Wenn die Bildtiefe 1 beträgt, wird das Bild mit 1 gefüllt, sofern color gleich Qt::color1 ist; andernfalls wird es mit 0 gefüllt.

Wenn die Bildtiefe 8 beträgt, wird das Bild mit dem Index gefüllt, der dem Wert „ color “ in der Farbtabelle entspricht, sofern dieser vorhanden ist; andernfalls wird es mit 0 gefüllt.

Dies ist eine überladene Funktion.

[since 6.9] void QImage::flip(Qt::Orientations orient = Qt::Vertical)

Spiegelt das Bild je nach der Einstellung „ orient “ in horizontaler und/oder vertikaler Richtung.

Diese Funktion wurde in Qt 6.9 eingeführt.

Siehe auch flipped(Qt::Orientations) und Image Transformations.

[since 6.9] QImage QImage::flipped(Qt::Orientations orient = Qt::Vertical) &&

[since 6.9] QImage QImage::flipped(Qt::Orientations orient = Qt::Vertical) const &

Gibt eine gedrehte oder gespiegelte Version des Bildes zurück, die je nach der Einstellung von ` orient` in horizontaler und/oder vertikaler Richtung gespiegelt ist.

Beachten Sie, dass das Originalbild nicht verändert wird.

Diese Funktionen wurden in Qt 6.9 eingeführt.

Siehe auch flip(Qt::Orientations) und Image Transformations.

QImage::Format QImage::format() const

Gibt das Format des Bildes zurück.

Siehe auch Image Formats.

[static, since 6.2] QImage QImage::fromData(QByteArrayView data, const char *format = nullptr)

Erstellt ein Bild aus den angegebenen Werten „ QByteArrayView “ und „ data “. Der Loader versucht, das Bild mithilfe des angegebenen „ format “ zu lesen. Wenn „ format “ nicht angegeben ist (was der Standard ist), durchsucht der Loader die Daten nach einem Header, um das Dateiformat zu ermitteln.

Wenn „ format “ angegeben ist, muss es sich um einen der Werte handeln, die von „ QImageReader::supportedImageFormats()“ zurückgegeben werden.

Wenn das Laden des Bildes fehlschlägt, wird ein Nullbild zurückgegeben.

Diese Funktion wurde in Qt 6.2 eingeführt.

Siehe auch ` load()`, ` save()` und ` Reading and Writing Image Files`.

[static] QImage QImage::fromData(const QByteArray &data, const char *format = nullptr)

Erzeugt ein ` QImage ` aus den angegebenen ` QByteArray ` und ` data`.

Dies ist eine überladene Funktion.

[static] QImage QImage::fromData(const uchar *data, int size, const char *format = nullptr)

Erstellt ein ` QImage ` aus den ersten ` size ` Bytes der angegebenen Binärdatei ` data`.

Dies ist eine überladene Funktion.

[static, since 6.0] QImage QImage::fromHBITMAP(HBITMAP hbitmap)

Gibt ein ` QImage ` zurück, das dem angegebenen ` hbitmap` entspricht.

HBITMAP speichert keine Informationen über den Alphakanal.

Im Standardfall wird der Alphakanal ignoriert und ein vollständig undurchsichtiges Bild erstellt (typischerweise im Format „ QImage::Format_RGB32 “).

Es gibt jedoch Fälle, in denen der Alphakanal verwendet wird, beispielsweise bei Anwendungs- oder Systemablage-Symbolen. In diesem Fall sollte die Funktion ` reinterpretAsFormat(QImage::Format_ARGB32) ` für das zurückgegebene Bild aufgerufen werden, um sicherzustellen, dass das Format korrekt ist.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch ` toHBITMAP()` und ` reinterpretAsFormat()`.

[static, since 6.0] QImage QImage::fromHICON(HICON icon)

Gibt ein ` QImage ` zurück, das dem angegebenen ` icon` entspricht.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch ` toHICON()`.

bool QImage::hasAlphaChannel() const

Gibt „ true “ zurück, wenn das Bild ein Format hat, das den Alphakanal berücksichtigt; andernfalls wird „ false “ zurückgegeben.

Siehe auch „ Image Information “.

int QImage::height() const

Gibt die Höhe des Bildes zurück.

Siehe auch „ Image Information “.

void QImage::invertPixels(QImage::InvertMode mode = InvertRgb)

Kehrt alle Pixelwerte im Bild um.

Die angegebenen Invertierungs mode en sind nur dann von Bedeutung, wenn die Bildtiefe 32 beträgt. Der Standard mode ist „ InvertRgb “, wodurch der Alphakanal unverändert bleibt. Wenn der „ mode “ auf „ InvertRgba “ gesetzt ist, werden auch die Alpha-Bits invertiert.

Das Invertieren eines 8-Bit-Bildes bedeutet, alle Pixel mit dem Farbindex i durch ein Pixel mit dem Farbindex 255 minus i zu ersetzen. Das Gleiche gilt für ein 1-Bit-Bild. Beachten Sie, dass die Farbtabelle nicht verändert wird.

Verfügt das Bild über einen vormultiplizierten Alphakanal, wird es zur Invertierung zunächst in ein nicht vormultipliziertes Bildformat konvertiert und anschließend wieder zurückkonvertiert.

Siehe auch „ Image Transformations “.

bool QImage::isGrayscale() const

Bei 32-Bit-Bildern entspricht diese Funktion der Funktion „ allGray()“.

Bei farbindizierten Bildern gibt diese Funktion „ true “ zurück, wenn „color(i)“ für alle Indizes der Farbtabelle den Wert „ QRgb(i, i, i)“ hat; andernfalls wird „ false “ zurückgegeben.

Siehe auch „ allGray()“ und „ Image Formats “.

bool QImage::isNull() const

Gibt „ true “ zurück, wenn es sich um ein Null-Bild handelt, andernfalls „ false “.

Bei einem Null-Bild sind alle Parameter auf Null gesetzt und es sind keine Daten zugewiesen.

bool QImage::load(const QString &fileName, const char *format = nullptr)

Lädt ein Bild aus der Datei mit der angegebenen Dateiendung („ fileName “) . Gibt „ true “ zurück, wenn das Bild erfolgreich geladen wurde; andernfalls wird das Bild ungültig gemacht und „ false “ zurückgegeben.

Der Loader versucht, das Bild unter Verwendung des angegebenen format s (z. B. PNG oder JPG) zu lesen. Wenn kein format angegeben ist (was der Standard ist), wird dieser anhand der Dateiendung und des Headers automatisch ermittelt. Weitere Informationen finden Sie unter QImageReader::setAutoDetectImageFormat().

Der Dateiname kann sich entweder auf eine tatsächliche Datei auf der Festplatte oder auf eine der in die Anwendung eingebetteten Ressourcen beziehen. Weitere Informationen zum Einbetten von Bildern und anderen Ressourcendateien in die ausführbare Datei der Anwendung finden Sie in der Übersicht zum Ressourcensystem.

Siehe auch Reading and Writing Image Files.

bool QImage::load(QIODevice *device, const char *format)

Diese Funktion liest ein ` QImage ` aus der angegebenen ` device` ein. Dies kann beispielsweise dazu verwendet werden, ein Bild direkt in ein ` QByteArray` zu laden.

Dies ist eine überladene Funktion.

[since 6.2] bool QImage::loadFromData(QByteArrayView data, const char *format = nullptr)

Lädt ein Bild aus der angegebenen Bilddatei QByteArrayView data . Gibt „ true “ zurück, wenn das Bild erfolgreich geladen wurde; andernfalls wird das Bild ungültig gemacht und „ false “ zurückgegeben.

Der Loader versucht, das Bild unter Verwendung des angegebenen format, z. B. PNG oder JPG, zu lesen. Wenn format nicht angegeben ist (was die Standardeinstellung ist), durchsucht der Loader die Datei nach einem Header, um das Dateiformat zu ermitteln.

Diese Funktion wurde in Qt 6.2 eingeführt.

Siehe auch „ Reading and Writing Image Files “.

bool QImage::loadFromData(const QByteArray &data, const char *format = nullptr)

Lädt ein Bild von der angegebenen URL QByteArray data .

Dies ist eine überladene Funktion.

bool QImage::loadFromData(const uchar *data, int len, const char *format = nullptr)

Lädt ein Bild aus den ersten len Bytes der angegebenen Binärdatei data.

Dies ist eine überladene Funktion.

[since 6.0, until 6.13] void QImage::mirror(bool horizontal = false, bool vertical = true)

Diese Funktion soll in Version 6.13 als veraltet markiert werden.

Verwenden Sie stattdessen flip(Qt::Orientations).

Spiegelt das Bild in horizontaler und/oder vertikaler Richtung, je nachdem, ob „ horizontal “ und „ vertical “ auf „true“ oder „false“ gesetzt sind.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch mirrored() und Image Transformations.

[until 6.13] QImage QImage::mirrored(bool horizontal = false, bool vertical = true) &&

[until 6.13] QImage QImage::mirrored(bool horizontal = false, bool vertical = true) const &

Diese Funktion wird in Version 6.13 als veraltet markiert.

Verwenden Sie stattdessen `flipped(Qt::Orientations)`.

Gibt ein Spiegelbild des Bildes zurück, das je nachdem, ob „ horizontal “ und „ vertical “ auf „true“ oder „false“ gesetzt sind, in horizontaler und/oder vertikaler Richtung gespiegelt wird.

Beachten Sie, dass das Originalbild nicht verändert wird.

Siehe auch mirror() und Image Transformations.

QPoint QImage::offset() const

Gibt die Anzahl der Pixel zurück, um die das Bild bei der Positionierung relativ zu anderen Bildern versetzt werden soll.

Siehe auch setOffset() und Image Information.

QRgb QImage::pixel(const QPoint &position) const

Gibt die Farbe des Pixels an der angegebenen Koordinate position zurück.

Ist die Koordinate ` position ` ungültig, ist das Ergebnis undefiniert.

Warnung: Diese Funktion ist bei umfangreichen Pixelbearbeitungen rechenintensiv. Verwenden Sie „ constBits()“ oder „ constScanLine()“, wenn viele Pixel gelesen werden müssen.

Siehe auch setPixel(), valid(), constBits(), constScanLine() und Pixel Manipulation.

QRgb QImage::pixel(int x, int y) const

Gibt die Farbe des Pixels an den Koordinaten (x, y) zurück.

Dies ist eine überladene Funktion.

QColor QImage::pixelColor(const QPoint &position) const

Gibt die Farbe des Pixels an der angegebenen Koordinate ` position ` als ` QColor` zurück.

Ist die Koordinate ` position ` ungültig, wird ein ungültiger Wert ` QColor ` zurückgegeben.

Warnung: Diese Funktion ist bei umfangreichen Pixelbearbeitungen rechenintensiv. Verwenden Sie „ constBits()“ oder „ constScanLine()“, wenn viele Pixel gelesen werden müssen.

Siehe auch setPixelColor(), setPixel(), valid(), constBits(), constScanLine() und Pixel Manipulation.

QColor QImage::pixelColor(int x, int y) const

Gibt die Farbe des Pixels an den Koordinaten (x, y) als „ QColor “ zurück.

Dies ist eine überladene Funktion.

[noexcept] QPixelFormat QImage::pixelFormat() const

Gibt die „ QImage::Format “ als QPixelFormat

int QImage::pixelIndex(const QPoint &position) const

Gibt den Pixelindex an der angegebenen Adresse position zurück.

Ist ` position ` ungültig oder handelt es sich bei dem Bild nicht um ein Palettenbild (`depth()` > 8), sind die Ergebnisse undefiniert.

Siehe auch valid(), depth() und Pixel Manipulation.

int QImage::pixelIndex(int x, int y) const

Gibt den Pixelindex an der Stelle (x, y) zurück.

Dies ist eine überladene Funktion.

QRect QImage::rect() const

Gibt das umschließende Rechteck (0, 0, width(), height()) des Bildes zurück.

Siehe auch ` Image Information`.

bool QImage::reinterpretAsFormat(QImage::Format format)

Ändert das Format des Bildes in „ format “, ohne die Daten zu verändern. Funktioniert nur zwischen Formaten gleicher Tiefe.

Gibt bei Erfolg „ true “ zurück.

Diese Funktion kann verwendet werden, um Bilder mit Alphakanälen in die entsprechenden opaken Formate umzuwandeln, wenn bekannt ist, dass die Daten ausschließlich opak sind, oder um das Format eines bestimmten Bildpuffers zu ändern, bevor dieser mit neuen Daten überschrieben wird.

Warnung: Die Funktion prüft nicht, ob die Bilddaten im neuen Format gültig sind, und gibt dennoch „ true “ zurück, sofern die Farbtiefen kompatibel sind. Operationen an einem Bild mit ungültigen Daten sind undefiniert.

Warnung: Wenn das Bild nicht freigegeben ist, führt dies dazu, dass die Daten kopiert werden.

Siehe auch ` hasAlphaChannel()` und ` convertToFormat()`.

[since 6.0] void QImage::rgbSwap()

Tauscht die Werte der roten und blauen Komponenten aller Pixel aus und wandelt so ein RGB-Bild in ein BGR-Bild um.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch „ rgbSwapped()“ und „ Image Transformations “.

QImage QImage::rgbSwapped() &&

QImage QImage::rgbSwapped() const &

Gibt ein „ QImage “ zurück, bei dem die Werte der roten und blauen Komponenten aller Pixel vertauscht wurden, wodurch ein RGB-Bild effektiv in ein BGR-Bild umgewandelt wird.

Das ursprüngliche ` QImage ` wird nicht verändert.

Siehe auch „ rgbSwap()“ und „ Image Transformations “.

bool QImage::save(const QString &fileName, const char *format = nullptr, int quality = -1) const

Speichert das Bild in der Datei mit dem angegebenen „ fileName “, unter Verwendung der angegebenen Bilddatei- format s und des „ quality “-Faktors. Wenn „ format “ auf „ nullptr “ gesetzt ist, versucht „ QImage “, das Format anhand der Dateiendung von „ fileName “ zu ermitteln.

Der Faktor „ quality “ muss im Bereich von 0 bis 100 oder -1 liegen. Geben Sie 0 an, um kleine komprimierte Dateien zu erhalten, 100 für große unkomprimierte Dateien und -1 (Standard) zur Verwendung der Standardeinstellungen.

Gibt „ true “ zurück, wenn das Bild erfolgreich gespeichert wurde; andernfalls wird „ false “ zurückgegeben.

Siehe auch „ Reading and Writing Image Files “.

bool QImage::save(QIODevice *device, const char *format = nullptr, int quality = -1) const

Diese Funktion schreibt eine „ QImage “ in die angegebene „ device “.

Dies kann beispielsweise verwendet werden, um ein Bild direkt in einer „ QByteArray “ zu speichern:

QImage image;
QByteArray ba;
QBuffer buffer(&ba);
buffer.open(QIODevice::WriteOnly);
image.save(&buffer, "PNG"); // writes image into ba in PNG format

Dies ist eine überladene Funktion.

QImage QImage::scaled(const QSize &size, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation) const

Gibt eine Kopie des Bildes zurück, die auf ein Rechteck skaliert ist, das durch die angegebene ` size ` gemäß den angegebenen Werten für ` aspectRatioMode ` und ` transformMode` definiert ist.

Abbildung, die drei verschiedene Möglichkeiten zur Skalierung von Bildern im Seitenverhältnis-Modus zeigt

  • Ist aspectRatioMode gleich Qt::IgnoreAspectRatio, wird das Bild auf size skaliert.
  • Ist aspectRatioMode gleich Qt::KeepAspectRatio, wird das Bild unter Beibehaltung des Seitenverhältnisses auf ein möglichst großes Rechteck innerhalb von size skaliert.
  • Ist „ aspectRatioMode “ gleich „ Qt::KeepAspectRatioByExpanding “, wird das Bild unter Beibehaltung des Seitenverhältnisses auf ein möglichst kleines Rechteck außerhalb von „ size “ skaliert.

Ist das angegebene ` size ` leer, gibt diese Funktion ein Nullbild zurück.

Siehe auch isNull() und Image Transformations.

QImage QImage::scaled(int width, int height, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation) const

Gibt eine Kopie des Bildes zurück, das entsprechend den angegebenen Werten für „ width “ und „ height “ sowie den angegebenen Werten für „ aspectRatioMode “ und „ transformMode “ auf ein Rechteck skaliert wurde.

Ist entweder die Breite ( width ) oder die Höhe ( height ) gleich Null oder negativ, gibt diese Funktion ein Nullbild zurück.

Dies ist eine überladene Funktion.

QImage QImage::scaledToHeight(int height, Qt::TransformationMode mode = Qt::FastTransformation) const

Gibt eine skalierte Kopie des Bildes zurück. Das zurückgegebene Bild wird mithilfe der angegebenen Transformation mode auf die angegebene Größe height skaliert.

Diese Funktion berechnet automatisch die Breite des Bildes, sodass das Seitenverhältnis des Bildes erhalten bleibt.

Ist die angegebene Größe ` height ` gleich 0 oder negativ, wird ein Nullbild zurückgegeben.

Siehe auch „ Image Transformations “.

QImage QImage::scaledToWidth(int width, Qt::TransformationMode mode = Qt::FastTransformation) const

Gibt eine skalierte Kopie des Bildes zurück. Das zurückgegebene Bild wird mithilfe der angegebenen Transformation mode auf die angegebene Größe width skaliert.

Diese Funktion berechnet automatisch die Höhe des Bildes, sodass dessen Seitenverhältnis erhalten bleibt.

Ist die angegebene Breite „ width “ gleich 0 oder negativ, wird ein Nullbild zurückgegeben.

Siehe auch ` Image Transformations`.

uchar *QImage::scanLine(int i)

Gibt einen Zeiger auf die Pixeldaten der Scanlinie mit dem Index i zurück. Die erste Scanlinie hat den Index 0.

Die Scanline-Daten sind mindestens 32-Bit-ausgerichtet. Bei 64-Bit-Formaten folgt die Ausrichtung der nativen Ausrichtung von 64-Bit-Ganzzahlen (64 Bit auf den meisten Plattformen, jedoch insbesondere 32 Bit auf i386).

Beispiel: Um die Grünkomponente jedes Pixels in einem Bild zu entfernen:

for (int y = 0; y < image.height(); ++y) {
    QRgb *line = reinterpret_cast<QRgb*>(image.scanLine(y));
    for (int x = 0; x < image.width(); ++x) {
        QRgb &rgb = line[x];
        rgb = qRgba(qRed(rgb), qGreen(0), qBlue(rgb), qAlpha(rgb));
    }
}

Warnung: Wenn Sie auf 32-bpp-Bilddaten zugreifen, wandeln Sie den zurückgegebenen Zeiger in „ QRgb* “ um (da „QRgb “ eine Größe von 32 Bit hat) und verwenden Sie ihn zum Lesen bzw. Schreiben des Pixelwerts. Sie können den Zeiger „ uchar* “ nicht direkt verwenden, da das Pixelformat von der Byte-Reihenfolge der zugrunde liegenden Plattform abhängt. Verwenden Sie „ qRed()“, „ qGreen()“, „ qBlue()“ und „ qAlpha()“, um auf die Pixel zuzugreifen.

Siehe auch bytesPerLine(), bits(), Pixel Manipulation und constScanLine().

const uchar *QImage::scanLine(int i) const

Dies ist eine überladene Funktion.

void QImage::setAlphaChannel(const QImage &alphaChannel)

Setzt den Alphakanal dieses Bildes auf das angegebene Bild „ alphaChannel “.

Ist „ alphaChannel “ ein 8-Bit-Alphabild, werden die Alphawerte direkt verwendet. Andernfalls wird „ alphaChannel “ in ein 8-Bit-Graustufenbild konvertiert und die Intensität der Pixelwerte verwendet.

Verfügt das Bild bereits über einen Alphakanal, wird der vorhandene Alphakanal mit dem neuen multipliziert. Verfügt das Bild nicht über einen Alphakanal, wird es in ein Format konvertiert, das einen solchen enthält.

Der Vorgang ähnelt dem Übermalen von alphaChannel als Alpha-Bild über dieses Bild mithilfe von QPainter::CompositionMode_DestinationIn.

Siehe auch hasAlphaChannel(), Image Transformations und Image Formats.

void QImage::setColor(int index, QRgb colorValue)

Setzt die Farbe an der angegebenen Adresse „ index “ in der Farbtabelle auf den angegebenen Wert „ colorValue “. Der Farbwert ist ein ARGB-Quadrupel.

Liegt „ index “ außerhalb der aktuellen Größe der Farbtabelle, wird diese mit „ setColorCount()“ erweitert.

Siehe auch „ color()“, „ colorCount()“, „ setColorTable()“ und „ Pixel Manipulation “.

void QImage::setColorCount(int colorCount)

Passen Sie die Größe der Farbtabelle so an, dass sie colorCount Einträge enthält.

Wird die Farbtabelle erweitert, werden alle zusätzlichen Farben auf transparent gesetzt (d. h. qRgba(0, 0, 0, 0)).

Bei der Verwendung des Bildes muss die Farbtabelle groß genug sein, um Einträge für alle im Bild vorhandenen Pixel-/Indexwerte zu enthalten; andernfalls sind die Ergebnisse undefiniert.

Siehe auch colorCount(), colorTable(), setColor() und Image Transformations.

void QImage::setColorSpace(const QColorSpace &colorSpace)

Legt den Farbraum des Bildes auf „ colorSpace “ fest, ohne dass dabei Konvertierungen an den Bilddaten vorgenommen werden.

Siehe auch „ colorSpace()“.

void QImage::setColorTable(const QList<QRgb> &colors)

Legt die Farbtabelle fest, die zur Umwandlung von Farbindizes in „ QRgb “-Werte verwendet wird, und zwar auf die angegebene „ colors “.

Bei Verwendung des Bildes muss die Farbtabelle groß genug sein, um Einträge für alle im Bild vorhandenen Pixel-/Indexwerte zu enthalten; andernfalls sind die Ergebnisse undefiniert.

Siehe auch colorTable(), setColor() und Image Transformations.

void QImage::setDevicePixelRatio(qreal scaleFactor)

Legt das Gerätepixelverhältnis für das Bild fest. Dies ist das Verhältnis zwischen Bildpixeln und geräteunabhängigen Pixeln.

Der Standard scaleFactor wert ist 1,0. Eine andere Einstellung hat zwei Auswirkungen:

QPainters, die auf dem Bild geöffnet werden, werden skaliert. Wenn beispielsweise auf einem 200x200-Bild mit einem Verhältnis von 2,0 gezeichnet wird, ergibt dies effektive (geräteunabhängige) Zeichenbereiche von 100x100.

Codepfade in Qt, die die Layout-Geometrie basierend auf der Bildgröße berechnen, berücksichtigen das Verhältnis: ` QSize layoutSize = image.size() / image.devicePixelRatio()`. Dies hat letztlich zur Folge, dass das Bild als Bild mit hoher DPI-Auflösung und nicht als großes Bild angezeigt wird (siehe Drawing High Resolution Versions of Pixmaps and Images).

Siehe auch devicePixelRatio() und deviceIndependentSize().

void QImage::setDotsPerMeterX(int x)

Legt die Anzahl der Pixel fest, die horizontal in einen physikalischen Meter passen, auf x.

Zusammen mit ` dotsPerMeterY()` definiert diese Zahl den beabsichtigten Maßstab und das Seitenverhältnis des Bildes und bestimmt den Maßstab, in dem ` QPainter ` Grafiken auf das Bild zeichnet. Der Maßstab oder das Seitenverhältnis des Bildes werden nicht verändert, wenn es auf anderen Zeichenvorrichtungen gerendert wird.

Siehe auch ` dotsPerMeterX()` und ` Image Information`.

void QImage::setDotsPerMeterY(int y)

Legt die Anzahl der Pixel fest, die vertikal in einen physikalischen Meter passen, und zwar auf y.

Zusammen mit ` dotsPerMeterX()` definiert diese Zahl den beabsichtigten Maßstab und das Seitenverhältnis des Bildes und bestimmt den Maßstab, in dem ` QPainter ` Grafiken auf das Bild zeichnet. Der Maßstab oder das Seitenverhältnis des Bildes wird dabei nicht verändert, wenn es auf anderen Zeichenvorrichtungen gerendert wird.

Siehe auch ` dotsPerMeterY()` und ` Image Information`.

void QImage::setOffset(const QPoint &offset)

Legt die Anzahl der Pixel fest, um die das Bild bei der Positionierung relativ zu anderen Bildern versetzt werden soll, auf offset.

Siehe auch „ offset()“ und „ Image Information “.

void QImage::setPixel(const QPoint &position, uint index_or_rgb)

Setzt den Pixelindex oder die Farbe an der angegebenen Position ` position ` auf ` index_or_rgb`.

Wenn das Bildformat entweder monochrom oder palettenbasiert ist, muss der angegebene Wert für „ index_or_rgb “ ein Index in der Farbtabelle des Bildes sein; andernfalls muss der Parameter ein Wert für „ QRgb “ sein.

Ist „ position “ kein gültiges Koordinatenpaar im Bild oder ist „ index_or_rgb “ >= „ colorCount()“ bei monochromen und palettenbasierten Bildern, ist das Ergebnis undefiniert.

Warnung: Diese Funktion ist aufgrund des Aufrufs der darin enthaltenen internen Funktion „ detach() “ rechenintensiv; wenn die Leistung eine Rolle spielt, empfehlen wir die Verwendung von „ scanLine()“ oder „ bits()“, um direkt auf Pixeldaten zuzugreifen.

Siehe auch pixel() und Pixel Manipulation.

void QImage::setPixel(int x, int y, uint index_or_rgb)

Setzt den Pixelindex oder die Farbe an der Position (x, y) auf index_or_rgb.

Dies ist eine überladene Funktion.

void QImage::setPixelColor(const QPoint &position, const QColor &color)

Setzt die Farbe an der angegebenen Koordinatenstelle ` position ` auf ` color`.

Wenn „ position “ kein gültiges Koordinatenpaar im Bild ist oder das Bildformat entweder monochrom oder palettenbasiert ist, ist das Ergebnis undefiniert.

Warnung: Diese Funktion ist aufgrund des Aufrufs der darin enthaltenen internen Funktion „ detach() “ rechenintensiv; wenn die Leistung eine Rolle spielt, empfehlen wir die Verwendung von „ scanLine()“ oder „ bits()“, um direkt auf Pixeldaten zuzugreifen.

Siehe auch pixelColor(), pixel(), bits(), scanLine() und Pixel Manipulation.

void QImage::setPixelColor(int x, int y, const QColor &color)

Setzt die Pixelfarbe an der Position (x, y) auf color.

Dies ist eine überladene Funktion.

void QImage::setText(const QString &key, const QString &text)

Setzt den Bildtext auf die angegebene „ text “ und ordnet ihn der angegebenen „ key “ zu.

Wenn Sie lediglich einen einzelnen Textblock (d. h. einen „Kommentar“ oder einfach nur eine Beschreibung) speichern möchten, können Sie entweder einen leeren Schlüssel übergeben oder einen generischen Schlüssel wie „Description“ verwenden.

Der Bildtext wird in die Bilddaten eingebettet, wenn Sie save() oder QImageWriter::write() aufrufen.

Nicht alle Bildformate unterstützen eingebetteten Text. Mit ` QImageWriter::supportsOption()` kannst du herausfinden, ob ein bestimmtes Bild oder Format das Einbetten von Text unterstützt. Hier ein Beispiel:

    QImageWriter writer;
    writer.setFormat("png");
    if (writer.supportsOption(QImageIOHandler::Description))
        qDebug() << "Png supports embedded text";

Mit QImageWriter::supportedImageFormats() können Sie herausfinden, welche Bildformate Ihnen zur Verfügung stehen.

Siehe auch text() und textKeys().

QSize QImage::size() const

Gibt die Größe des Bildes zurück, d. h. dessen width() und height().

Siehe auch Image Information und deviceIndependentSize().

qsizetype QImage::sizeInBytes() const

Gibt die Größe der Bilddaten in Byte zurück.

Siehe auch bytesPerLine(), bits() und Image Information.

[noexcept] void QImage::swap(QImage &other)

Ersetzt dieses Bild durch other. Dieser Vorgang läuft sehr schnell ab und schlägt niemals fehl.

QString QImage::text(const QString &key = QString()) const

Gibt den Bildtext zurück, der dem angegebenen „ key “ zugeordnet ist. Ist der angegebene „ key “ eine leere Zeichenkette, wird der gesamte Bildtext zurückgegeben, wobei jedes Schlüssel-Text-Paar durch einen Zeilenumbruch getrennt ist.

Siehe auch setText() und textKeys().

QStringList QImage::textKeys() const

Gibt die Textschlüssel für dieses Bild zurück.

Sie können diese Schlüssel mit der Funktion „ text()“ verwenden, um den Bildtext für einen bestimmten Schlüssel aufzulisten.

Siehe auch ` text()`.

CGImageRef QImage::toCGImage() const

Erstellt ein „ CGImage “, das diesem „ QImage “ entspricht, und gibt ein „ CGImageRef “-Handle zurück.

Das zurückgegebene `CGImageRef` ist Teil der impliziten gemeinsamen Nutzung von ` QImage ` und enthält einen Verweis auf die Daten von ` QImage `. `CGImage` ist unveränderlich und trennt die Verbindung zu ` QImage` niemals. Das Schreiben in ` QImage ` führt wie gewohnt zur Trennung der Verbindung.

Diese Funktion ist schnell und kopiert oder konvertiert keine Bilddaten.

Wenn das Bildformat nicht konvertiert werden kann, wird ein null-Wert für `CGImageRef` zurückgegeben. Nutzer dieser Funktion können dann zunächst das ` QImage ` in ein unterstütztes Format konvertieren, zum Beispiel ` Format_ARGB32_Premultiplied`.

Wenn für das Bild kein Farbraum festgelegt ist, wird der Farbraum des resultierenden CGImageRef auf den sRGB-Farbraum gesetzt.

[since 6.0] HBITMAP QImage::toHBITMAP() const

Erstellt ein „ HBITMAP “-Äquivalent des „ QImage “.

Gibt das Handle des „ HBITMAP “ zurück.

Es liegt in der Verantwortung des Aufrufers, die „ HBITMAP “-Daten nach der Verwendung freizugeben.

Für die Verwendung mit Standard-GDI-Aufrufen wie z. B. ` BitBlt()` sollte das Bild das Format ` QImage::Format_RGB32` haben.

Bei Verwendung des resultierenden HBITMAP für die GDI-Funktion „ AlphaBlend() “ sollte das Bild das Format „ QImage::Format_ARGB32_Premultiplied “ haben (verwenden Sie „ convertToFormat()“).

Bei Verwendung des resultierenden HBITMAP als Anwendungssymbol oder Systemablage-Symbol sollte das Bild das Format „ QImage::Format_ARGB32 “ haben.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch fromHBITMAP() und convertToFormat().

[since 6.0] HICON QImage::toHICON(const QImage &mask = {}) const

Erstellt ein Äquivalent von „ QPixmap “ im Format „ HICON “ unter Anwendung der Maske „ mask “.

Wenn mask nicht null ist, muss es das Format QImage::Format_Mono haben. Gibt das Handle HICON zurück.

Es liegt in der Verantwortung des Aufrufers, die Daten von ` HICON ` nach der Verwendung freizugeben.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch „ fromHICON()“.

[static noexcept] QImage::Format QImage::toImageFormat(QPixelFormat format)

Wandelt „ format “ in ein QImage::Format

[static noexcept] QPixelFormat QImage::toPixelFormat(QImage::Format format)

Wandelt „ format “ in ein QPixelFormat

QImage QImage::transformed(const QTransform &matrix, Qt::TransformationMode mode = Qt::FastTransformation) const

Gibt eine Kopie des Bildes zurück, das mithilfe der angegebenen Transformations matrix und des Transformations mode transformiert wurde.

Das zurückgegebene Bild hat normalerweise dasselbe {Bildformate}{Format} wie das Originalbild. Eine komplexe Transformation kann jedoch zu einem Bild führen, bei dem nicht alle Pixel durch die transformierten Pixel des Originalbildes abgedeckt sind. In solchen Fällen wird diesen Hintergrundpixeln ein transparenter Farbwert zugewiesen, und das transformierte Bild erhält ein Format mit einem Alphakanal, auch wenn das Originalbild diesen nicht hatte.

Die Transformations matrix e wird intern angepasst, um unerwünschte Verschiebungen auszugleichen; d. h., das erzeugte Bild ist das kleinste Bild, das alle transformierten Punkte des Originalbildes enthält. Verwenden Sie die Funktion „ trueMatrix()“, um die tatsächlich für die Transformation eines Bildes verwendete Matrix abzurufen.

Im Gegensatz zur anderen Überladung kann diese Funktion verwendet werden, um perspektivische Transformationen an Bildern durchzuführen.

Siehe auch trueMatrix() und Image Transformations.

[static] QTransform QImage::trueMatrix(const QTransform &matrix, int width, int height)

Gibt die tatsächliche Matrix zurück, die zur Transformation eines Bildes mit den angegebenen Werten für ` width`, ` height ` und ` matrix` verwendet wird.

Bei der Transformation eines Bildes mit der Funktion ` transformed()` wird die Transformationsmatrix intern angepasst, um unerwünschte Verschiebungen auszugleichen, d. h. ` transformed()` gibt das kleinste Bild zurück, das alle transformierten Punkte des Originalbildes enthält. Diese Funktion gibt die modifizierte Matrix zurück, die Punkte korrekt vom Originalbild in das neue Bild abbildet.

Im Gegensatz zur anderen Überladung erstellt diese Funktion Transformationsmatrizen, mit denen perspektivische Transformationen an Bildern durchgeführt werden können.

Siehe auch transformed() und Image Transformations.

bool QImage::valid(const QPoint &pos) const

Gibt „ true “ zurück, wenn „ pos “ ein gültiges Koordinatenpaar innerhalb des Bildes ist; andernfalls wird „ false “ zurückgegeben.

Siehe auch rect() und QRect::contains().

bool QImage::valid(int x, int y) const

Gibt „ true “ zurück, wenn „ QPoint “ (x, y) ein gültiges Koordinatenpaar innerhalb des Bildes ist; andernfalls wird „ false “ zurückgegeben.

Dies ist eine überladene Funktion.

int QImage::width() const

Gibt die Breite des Bildes zurück.

Siehe auch Image Information.

QImage::operator QVariant() const

Gibt das Bild als „ QVariant “ zurück.

bool QImage::operator!=(const QImage &image) const

Gibt „ true “ zurück, wenn dieses Bild und das angegebene „ image “ unterschiedliche Inhalte haben; andernfalls wird „ false “ zurückgegeben.

Der Vergleich kann langsam sein, es sei denn, es gibt einen offensichtlichen Unterschied, wie z. B. unterschiedliche Breiten; in diesem Fall liefert die Funktion das Ergebnis schnell.

Siehe auch operator=().

[noexcept] QImage &QImage::operator=(QImage &&other)

Weist „ other “ dieser „ QImage “-Instanz zu.

QImage &QImage::operator=(const QImage &image)

Weist diesem Image eine flache Kopie des angegebenen „ image “ zu und gibt einen Verweis auf dieses Image zurück.

Weitere Informationen zu flachen Kopien finden Sie in der Dokumentation zu impliziter Datenfreigabe.

Siehe auch „ copy()“ und „ QImage()“.

bool QImage::operator==(const QImage &image) const

Gibt „ true “ zurück, wenn dieses Bild und das angegebene „ image “ denselben Inhalt haben; andernfalls wird „ false “ zurückgegeben.

Der Vergleich kann langsam sein, es sei denn, es gibt einen offensichtlichen Unterschied (z. B. unterschiedliche Größe oder unterschiedliches Format); in diesem Fall liefert die Funktion schnell ein Ergebnis.

Siehe auch operator=().

Verwandte Nicht-Mitglieder

QImageCleanupFunction

Eine Funktion mit der folgenden Signatur, die zur Implementierung einer grundlegenden Bildspeicherverwaltung verwendet werden kann:

void myImageCleanupHandler(void *info);

QDataStream &operator<<(QDataStream &stream, const QImage &image)

Schreibt den angegebenen „ image “ als PNG-Bild in die angegebene „ stream “ oder als BMP-Bild, wenn die Version des Streams 1 ist. Beachten Sie, dass das Schreiben des Streams in eine Datei keine gültige Bilddatei erzeugt.

Siehe auch QImage::save() und Serialisierung von Qt-Datentypen.

QDataStream &operator>>(QDataStream &stream, QImage &image)

Liest ein Bild aus der angegebenen Datei „ stream “ ein und speichert es in der angegebenen Datei „ image “.

Siehe auch QImage::load() und „Serialisierung von Qt-Datentypen“.

© 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.