Sur cette page

QImageReader Class

La classe QImageReader fournit une interface indépendante du format pour la lecture d'images à partir de fichiers ou d'autres périphériques. Plus d'informations...

En-tête : #include <QImageReader>
CMake : find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake : QT += gui

Remarque : toutes les fonctions de cette classe sont réentrantes.

Types publics

enum ImageReaderError { FileNotFoundError, DeviceError, UnsupportedFormatError, InvalidDataError, UnknownError }

Fonctions publiques

QImageReader()
QImageReader(QIODevice *device, const QByteArray &format = QByteArray())
QImageReader(const QString &fileName, const QByteArray &format = QByteArray())
~QImageReader()
bool autoDetectImageFormat() const
bool autoTransform() const
QColor backgroundColor() const
bool canRead() const
QRect clipRect() const
int currentImageNumber() const
QRect currentImageRect() const
bool decideFormatFromContent() const
QIODevice *device() const
QImageReader::ImageReaderError error() const
QString errorString() const
QString fileName() const
QByteArray format() const
int imageCount() const
QImage::Format imageFormat() const
bool jumpToImage(int imageNumber)
bool jumpToNextImage()
int loopCount() const
int nextImageDelay() const
int quality() const
QImage read()
bool read(QImage *image)
QRect scaledClipRect() const
QSize scaledSize() const
void setAutoDetectImageFormat(bool enabled)
void setAutoTransform(bool enabled)
void setBackgroundColor(const QColor &color)
void setClipRect(const QRect &rect)
void setDecideFormatFromContent(bool ignored)
void setDevice(QIODevice *device)
void setFileName(const QString &fileName)
void setFormat(const QByteArray &format)
void setQuality(int quality)
void setScaledClipRect(const QRect &rect)
void setScaledSize(const QSize &size)
QSize size() const
QByteArray subType() const
QList<QByteArray> supportedSubTypes() const
bool supportsAnimation() const
bool supportsOption(QImageIOHandler::ImageOption option) const
QString text(const QString &key) const
QStringList textKeys() const
QImageIOHandler::Transformations transformation() const

Membres publics statiques

(since 6.0) int allocationLimit()
QByteArray imageFormat(QIODevice *device)
QByteArray imageFormat(const QString &fileName)
QList<QByteArray> imageFormatsForMimeType(const QByteArray &mimeType)
(since 6.0) void setAllocationLimit(int mbLimit)
QList<QByteArray> supportedImageFormats()
QList<QByteArray> supportedMimeTypes()

Description détaillée

La façon la plus courante de lire des images est de passer par les constructeurs de QImage et QPixmap ou d'appeler QImage::load() et QPixmap::load(). QImageReader est une classe spécialisée qui vous donne plus de contrôle lors de la lecture d'images. Par exemple, vous pouvez lire une image dans une taille spécifique en appelant setScaledSize(), et vous pouvez sélectionner un rectangle d'écrêtage, pour ne charger que des parties d'une image, en appelant setClipRect(). En fonction de la prise en charge sous-jacente du format d'image, cela peut permettre d'économiser de la mémoire et d'accélérer le chargement des images.

Pour lire une image, vous commencez par construire un objet QImageReader. Passez un nom de fichier ou un pointeur de périphérique, ainsi que le format de l'image au constructeur de QImageReader. Vous pouvez ensuite définir plusieurs options, telles que le rectangle de découpe (en appelant setClipRect()) et la taille à l'échelle (en appelant setScaledSize()). canRead() renvoie l'image si le QImageReader peut la lire (c'est-à-dire si le format d'image est pris en charge et si le périphérique est ouvert à la lecture). Appelez read() pour lire l'image.

En cas d'erreur lors de la lecture de l'image, read() renvoie une valeur nulle QImage. Vous pouvez ensuite appeler error() pour connaître le type d'erreur qui s'est produit, ou errorString() pour obtenir une description lisible par l'homme de ce qui s'est passé.

Remarque : QImageReader assume le contrôle exclusif du fichier ou du périphérique qui lui est attribué. Toute tentative de modification du fichier ou du périphérique attribué pendant la durée de vie de l'objet QImageReader produira des résultats indéfinis.

Formats

Appelez supportedImageFormats() pour obtenir une liste des formats que QImageReader peut lire. QImageReader prend en charge tous les formats d'image intégrés, ainsi que tous les plugins de format d'image qui prennent en charge la lecture. Appelez supportedMimeTypes() pour obtenir une liste des types MIME pris en charge, qui peut par exemple être transmise à QFileDialog::setMimeTypeFilters().

QImageReader détecte automatiquement le format de l'image par défaut, en examinant la chaîne de format fournie (facultative), le suffixe du nom de fichier et le contenu du flux de données. Vous pouvez activer ou désactiver cette fonction en appelant setAutoDetectImageFormat().

Versions haute résolution des images

Il est possible de fournir des versions haute résolution des images si une mise à l'échelle entre les pixels de l'appareil et les pixels indépendants de l'appareil est en vigueur.

La version haute résolution est identifiée par le suffixe @2x dans le nom de la base. L'image lue aura un rapport de pixels de périphérique fixé à une valeur de 2.

Ceci peut être désactivé en définissant la variable d'environnement QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING.

Voir aussi QImageWriter, QImageIOHandler, QImageIOPlugin, QMimeDatabase, QColorSpace, QImage::devicePixelRatio(), QPixmap::devicePixelRatio(), QIcon, QPainter::drawPixmap(), et QPainter::drawImage().

Documentation sur les types de membres

enum QImageReader::ImageReaderError

Cette énumération décrit les différents types d'erreurs qui peuvent se produire lors de la lecture d'images avec QImageReader.

ConstanteValeurDescription de l'erreur
QImageReader::FileNotFoundError1QImageReader a été utilisé avec un nom de fichier, mais aucun fichier n'a été trouvé avec ce nom. Cela peut également se produire si le nom du fichier ne contient pas d'extension et que le fichier avec l'extension correcte n'est pas pris en charge par Qt.
QImageReader::DeviceError2QImageReader a rencontré une erreur de périphérique lors de la lecture de l'image. Vous pouvez consulter votre périphérique particulier pour plus de détails sur ce qui s'est passé.
QImageReader::UnsupportedFormatError3Qt Image Formats ne prend pas en charge le format d'image demandé.
QImageReader::InvalidDataError4Les données de l'image n'étaient pas valides et QImageReader n'a pas été en mesure de lire une image. Cela peut se produire si le fichier image est endommagé.
QImageReader::UnknownError0Une erreur inconnue s'est produite. Si vous obtenez cette valeur après avoir appelé read(), cela est probablement dû à un bogue dans QImageReader.

Documentation des fonctions membres

QImageReader::QImageReader()

Construit un objet QImageReader vide. Avant de lire une image, appelez setDevice() ou setFileName().

[explicit] QImageReader::QImageReader(QIODevice *device, const QByteArray &format = QByteArray())

Construit un objet QImageReader avec le périphérique device et le format d'image format.

[explicit] QImageReader::QImageReader(const QString &fileName, const QByteArray &format = QByteArray())

Construit un objet QImageReader avec le nom de fichier fileName et le format d'image format.

Voir aussi setFileName().

[noexcept] QImageReader::~QImageReader()

Détruit l'objet QImageReader.

[static, since 6.0] int QImageReader::allocationLimit()

Renvoie la limite d'allocation actuelle, en mégaoctets.

Cette fonction a été introduite dans Qt 6.0.

Voir aussi setAllocationLimit().

bool QImageReader::autoDetectImageFormat() const

Renvoie true si l'autodétection du format d'image est activée sur ce lecteur d'images ; sinon, renvoie false. Par défaut, l'autodétection est activée.

Voir aussi setAutoDetectImageFormat().

bool QImageReader::autoTransform() const

Renvoie true si le gestionnaire d'images appliquera les métadonnées de transformation sur read().

Voir aussi setAutoTransform(), transformation() et read().

QColor QImageReader::backgroundColor() const

Renvoie la couleur d'arrière-plan utilisée lors de la lecture d'une image. Si le format de l'image ne permet pas de définir la couleur d'arrière-plan, une couleur invalide est renvoyée.

Voir aussi setBackgroundColor() et read().

bool QImageReader::canRead() const

Renvoie true si une image peut être lue pour le périphérique (c'est-à-dire que le format d'image est pris en charge et que le périphérique semble contenir des données valides) ; sinon, renvoie false.

canRead() est une fonction légère qui ne fait qu'un test rapide pour voir si les données de l'image sont valides. read() peut toujours renvoyer false après que canRead() renvoie true, si les données de l'image sont corrompues.

Remarque : une recherche sur QMimeDatabase est normalement une meilleure approche que cette fonction pour identifier des fichiers ou des données qui ne sont pas des images.

Pour les images qui prennent en charge l'animation, canRead() renvoie false lorsque toutes les images ont été lues.

Voir également read(), supportedImageFormats() et QMimeDatabase.

QRect QImageReader::clipRect() const

Renvoie le rectangle d'agrafage (également appelé ROI, ou région d'intérêt) de l'image. Si aucun clip rect n'a été défini, une adresse QRect invalide est renvoyée.

Voir également setClipRect().

int QImageReader::currentImageNumber() const

Pour les formats d'image qui supportent l'animation, cette fonction renvoie le numéro de séquence de l'image en cours. Si le format d'image ne prend pas en charge l'animation, la fonction renvoie 0.

Cette fonction renvoie -1 si une erreur s'est produite.

Voir aussi supportsAnimation(), QImageIOHandler::currentImageNumber() et canRead().

QRect QImageReader::currentImageRect() const

Pour les formats d'image qui supportent l'animation, cette fonction renvoie le rectangle de l'image en cours. Sinon, elle renvoie un rectangle nul.

Voir aussi supportsAnimation() et QImageIOHandler::currentImageRect().

bool QImageReader::decideFormatFromContent() const

Retourne si le lecteur d'images doit décider du plugin à utiliser en fonction du contenu du flux de données plutôt que de l'extension du fichier.

Voir aussi setDecideFormatFromContent().

QIODevice *QImageReader::device() const

Renvoie le périphérique actuellement attribué à QImageReader, ou nullptr si aucun périphérique n'a été attribué.

Voir aussi setDevice().

QImageReader::ImageReaderError QImageReader::error() const

Renvoie le type d'erreur qui s'est produite en dernier.

Voir aussi ImageReaderError et errorString().

QString QImageReader::errorString() const

Renvoie une description lisible par l'homme de la dernière erreur survenue.

Voir aussi error().

QString QImageReader::fileName() const

Si le périphérique actuellement assigné est un QFile, ou si setFileName() a été appelé, cette fonction renvoie le nom du fichier lu par QImageReader. Dans le cas contraire (c'est-à-dire si aucun périphérique n'a été assigné ou si le périphérique n'est pas un QFile), un QString vide est renvoyé.

Voir aussi setFileName() et setDevice().

QByteArray QImageReader::format() const

Renvoie le format utilisé par QImageReader pour la lecture des images.

Vous pouvez appeler cette fonction après avoir assigné un périphérique au lecteur pour déterminer le format du périphérique. Par exemple, si le lecteur ne peut lire aucune image sur le périphérique (p. ex :

QImageReader reader("image.png");
// reader.format() == "png"

Si le lecteur ne peut pas lire d'image sur le périphérique (par exemple, il n'y a pas d'image ou l'image a déjà été lue), ou si le format n'est pas pris en charge, cette fonction renvoie un QByteArray() vide.

Voir aussi setFormat() et supportedImageFormats().

int QImageReader::imageCount() const

Pour les formats d'image qui supportent l'animation, cette fonction renvoie le nombre total d'images dans l'animation. Si le format ne prend pas en charge l'animation, la fonction renvoie 0.

Cette fonction renvoie -1 si une erreur s'est produite.

Voir aussi supportsAnimation(), QImageIOHandler::imageCount() et canRead().

QImage::Format QImageReader::imageFormat() const

Renvoie le format de l'image, sans lire le contenu de l'image. Le format décrit le format d'image que QImageReader::read() renvoie, et non le format de l'image réelle.

Si le format de l'image ne prend pas en charge cette fonctionnalité, cette fonction renvoie un format non valide.

Voir également QImageIOHandler::ImageOption, QImageIOHandler::option() et QImageIOHandler::supportsOption().

[static] QByteArray QImageReader::imageFormat(QIODevice *device)

Si elle est prise en charge, cette fonction renvoie le format d'image de l'appareil device. Sinon, elle renvoie une chaîne vide.

Voir également QImageReader::autoDetectImageFormat().

[static] QByteArray QImageReader::imageFormat(const QString &fileName)

Si elle est prise en charge, cette fonction renvoie le format d'image du fichier fileName. Sinon, elle renvoie une chaîne vide.

[static] QList<QByteArray> QImageReader::imageFormatsForMimeType(const QByteArray &mimeType)

Renvoie la liste des formats d'image correspondant à mimeType.

Notez que l'instance QGuiApplication doit être créée avant que cette fonction ne soit appelée.

Voir aussi supportedImageFormats() et supportedMimeTypes().

bool QImageReader::jumpToImage(int imageNumber)

Pour les formats d'image qui supportent l'animation, cette fonction passe à l'image dont le numéro de séquence est imageNumber, en renvoyant true en cas de succès ou false si l'image correspondante ne peut être trouvée.

Le prochain appel à read() tentera de lire cette image.

Voir également jumpToNextImage() et QImageIOHandler::jumpToImage().

bool QImageReader::jumpToNextImage()

Pour les formats d'image qui prennent en charge l'animation, cette fonction passe à l'image courante, renvoyant true en cas de succès ou false s'il n'y a pas d'image suivante dans l'animation.

L'implémentation par défaut appelle read(), puis rejette l'image résultante, mais le gestionnaire d'image peut avoir une manière plus efficace d'implémenter cette opération.

Voir également jumpToImage() et QImageIOHandler::jumpToNextImage().

int QImageReader::loopCount() const

Pour les formats d'image qui supportent l'animation, cette fonction renvoie le nombre de fois que l'animation doit tourner en boucle. Si cette fonction renvoie -1, cela peut signifier que l'animation doit être bouclée pour toujours ou qu'une erreur s'est produite. Si une erreur s'est produite, canRead() renvoie un message faux.

Voir aussi supportsAnimation(), QImageIOHandler::loopCount() et canRead().

int QImageReader::nextImageDelay() const

Pour les formats d'image qui prennent en charge l'animation, cette fonction renvoie le nombre de millisecondes à attendre avant d'afficher l'image suivante de l'animation. Si le format d'image ne prend pas en charge l'animation, la fonction renvoie 0.

Cette fonction renvoie -1 si une erreur s'est produite.

Voir aussi supportsAnimation(), QImageIOHandler::nextImageDelay() et canRead().

int QImageReader::quality() const

Renvoie le paramètre de qualité du format d'image.

Voir aussi setQuality().

QImage QImageReader::read()

Lit une image sur le périphérique. En cas de succès, l'image lue est renvoyée ; dans le cas contraire, une adresse QImage est renvoyée. Vous pouvez ensuite appeler error() pour connaître le type d'erreur qui s'est produite, ou errorString() pour obtenir une description lisible de l'erreur.

Pour les formats d'image qui supportent l'animation, l'appel répété à read() renvoie l'image suivante. Lorsque toutes les images ont été lues, une image nulle est renvoyée.

Voir également canRead(), supportedImageFormats(), supportsAnimation() et QMovie.

bool QImageReader::read(QImage *image)

Lit une image du périphérique dans image, qui doit pointer vers QImage. renvoie true en cas de succès ; sinon, renvoie false.

Si image a le même format et la même taille que les données de l'image qui va être lue, cette fonction peut ne pas avoir besoin d'allouer une nouvelle image avant la lecture. C'est pourquoi elle peut être plus rapide que l'autre surcharge read(), qui construit toujours une nouvelle image, en particulier lorsqu'il s'agit de lire plusieurs images ayant le même format et la même taille.

QImage icon(64, 64, QImage::Format_RGB32);
QImageReader reader("icon_64x64.bmp");
if (reader.read(&icon)) {
    // Display icon
}

Pour les formats d'image qui supportent l'animation, l'appel répété à read() renverra l'image suivante. Lorsque toutes les images ont été lues, une image nulle est renvoyée.

Il s'agit d'une fonction surchargée.

Voir aussi canRead(), supportedImageFormats(), supportsAnimation() et QMovie.

QRect QImageReader::scaledClipRect() const

Renvoie le rectangle d'écrêtage mis à l'échelle de l'image.

Voir aussi setScaledClipRect().

QSize QImageReader::scaledSize() const

Renvoie la taille de l'image à l'échelle.

Voir également setScaledSize().

[static, since 6.0] void QImageReader::setAllocationLimit(int mbLimit)

Fixe la limite d'allocation à mbLimit mégaoctets. Les images qui nécessiteraient une allocation de mémoire QImage supérieure à cette limite seront rejetées. Si mbLimit vaut 0, la vérification de la taille de l'allocation est désactivée.

Cette limite permet aux applications d'éviter une utilisation excessive et inattendue de la mémoire lors du chargement de fichiers images corrompus. Il n'est normalement pas nécessaire de la modifier. La limite par défaut est suffisamment importante pour toutes les tailles d'images couramment utilisées.

Au moment de l'exécution, cette valeur peut être remplacée par la variable d'environnement QT_IMAGEIO_MAXALLOC.

Note : Les besoins en mémoire sont calculés pour un minimum de 32 bits par pixel, puisque Qt convertit généralement une image à cette profondeur lorsqu'elle est utilisée dans une interface graphique. Cela signifie que la limite d'allocation effective est significativement plus petite que mbLimit lors de la lecture d'images de 1 bpp et 8 bpp.

Cette fonction a été introduite dans Qt 6.0.

Voir aussi allocationLimit().

void QImageReader::setAutoDetectImageFormat(bool enabled)

Si enabled est vrai, l'autodétection du format d'image est activée ; sinon, elle est désactivée. Par défaut, l'autodétection est activée.

QImageReader utilise une approche extensive pour détecter le format de l'image ; tout d'abord, si vous donnez un nom de fichier à QImageReader, il tentera de détecter l'extension du fichier si le nom de fichier donné ne pointe pas vers un fichier existant, en ajoutant les extensions par défaut prises en charge au nom de fichier donné, une à la fois. Il utilise ensuite l'approche suivante pour détecter le format de l'image :

  • Les modules d'extension d'image sont interrogés en premier, sur la base de la chaîne de format optionnelle ou du suffixe du nom de fichier (si le périphérique source est un fichier). Aucune détection de contenu n'est effectuée à ce stade. QImageReader choisit le premier plugin qui prend en charge la lecture de ce format.
  • Si aucun plugin ne prend en charge le format d'image, les gestionnaires intégrés de Qt sont vérifiés sur la base de la chaîne de format optionnelle ou du suffixe du nom de fichier.
  • Si aucun plugin ou gestionnaire intégré n'est trouvé, chaque plugin est testé en inspectant le contenu du flux de données.
  • Si aucun plugin ne peut détecter le format de l'image sur la base du contenu des données, chaque gestionnaire d'image intégré est testé en inspectant le contenu.
  • Enfin, si toutes les approches ci-dessus échouent, QImageReader signale un échec lors de la lecture de l'image.

En désactivant l'autodétection du format de l'image, QImageReader interrogera uniquement les plugins et les gestionnaires intégrés sur la base de la chaîne de format (c'est-à-dire qu'aucune extension de nom de fichier n'est testée).

Voir aussi autoDetectImageFormat(), QImageIOHandler::canRead() et QImageIOPlugin::capabilities().

void QImageReader::setAutoTransform(bool enabled)

Détermine que les images renvoyées par read() doivent avoir des métadonnées de transformation automatiquement appliquées si enabled est true.

Voir aussi autoTransform(), transformation() et read().

void QImageReader::setBackgroundColor(const QColor &color)

Définit la couleur d'arrière-plan à color. Les formats d'image qui prennent en charge cette opération sont censés initialiser l'arrière-plan à color avant de lire une image.

Voir aussi backgroundColor() et read().

void QImageReader::setClipRect(const QRect &rect)

Définit le rectangle du clip de l'image (également connu sous le nom de ROI, ou région d'intérêt) à rect. Les coordonnées de rect sont relatives à la taille de l'image non transformée, telle qu'elle est renvoyée par size().

Voir également clipRect(), setScaledSize() et setScaledClipRect().

void QImageReader::setDecideFormatFromContent(bool ignored)

Si ignored vaut true, le lecteur d'images ignorera les formats ou les extensions de fichiers spécifiés et décidera du plugin à utiliser en fonction du contenu du flux de données.

Le fait d'activer ce drapeau signifie que tous les plugins d'image seront chargés. Chaque plugin lira les premiers octets des données de l'image et décidera si le plugin est compatible ou non.

Cela désactive également la détection automatique du format d'image.

Voir aussi decideFormatFromContent().

void QImageReader::setDevice(QIODevice *device)

Définit le périphérique de QImageReader à device. Si un périphérique a déjà été défini, l'ancien périphérique est supprimé de QImageReader et est sinon laissé inchangé.

Si le périphérique n'est pas déjà ouvert, QImageReader tentera d'ouvrir le périphérique en mode ReadOnly en appelant open(). Notez que cela ne fonctionne pas pour certains dispositifs, tels que QProcess, QTcpSocket et QUdpSocket, où plus de logique est nécessaire pour ouvrir le dispositif.

Voir aussi device() et setFileName().

void QImageReader::setFileName(const QString &fileName)

Définit le nom de fichier de QImageReader à fileName. En interne, QImageReader créera un objet QFile et l'ouvrira en mode ReadOnly, et l'utilisera lors de la lecture d'images.

Si fileName n'inclut pas d'extension de fichier (par exemple, .png ou .bmp), QImageReader parcourt toutes les extensions prises en charge jusqu'à ce qu'il trouve un fichier correspondant.

Voir aussi fileName(), setDevice() et supportedImageFormats().

void QImageReader::setFormat(const QByteArray &format)

Définit le format que QImageReader utilisera lors de la lecture d'images, à format. format est une chaîne de texte insensible à la casse. Exemple :

QImageReader reader;
reader.setFormat("png"); // same as reader.setFormat("PNG");

Vous pouvez appeler supportedImageFormats() pour obtenir la liste complète des formats pris en charge par QImageReader.

Voir aussi format().

void QImageReader::setQuality(int quality)

Définit le paramètre de qualité du format d'image à quality.

Certains formats d'image, en particulier les formats avec perte, impliquent un compromis entre a) la qualité visuelle de l'image résultante et b) le temps d'exécution du décodage. Cette fonction définit le niveau de ce compromis pour les formats d'image qui le supportent.

Dans le cas de la lecture d'images mises à l'échelle, le réglage de la qualité peut également influencer le compromis entre la qualité visuelle et la vitesse d'exécution de l'algorithme de mise à l'échelle.

La plage de valeurs de quality dépend du format d'image. Par exemple, le format "jpeg" prend en charge une plage de qualité allant de 0 (faible qualité visuelle) à 100 (haute qualité visuelle).

Voir également quality() et setScaledSize().

void QImageReader::setScaledClipRect(const QRect &rect)

Définit le rectangle de clip mis à l'échelle sur rect. Le rectangle de clip mis à l'échelle est le rectangle de clip (également connu sous le nom de ROI, ou région d'intérêt) qui est appliqué après la mise à l'échelle de l'image.

Voir également scaledClipRect() et setScaledSize().

void QImageReader::setScaledSize(const QSize &size)

Définit la taille de l'image à l'échelle sur size. La mise à l'échelle est effectuée après le rectangle d'accrochage initial, mais avant l'application du rectangle d'accrochage à l'échelle. L'algorithme utilisé pour la mise à l'échelle dépend du format de l'image. Par défaut (c'est-à-dire si le format d'image ne prend pas en charge la mise à l'échelle), QImageReader utilisera QImage::scale() avec Qt::SmoothScaling.

Si une seule dimension est définie dans size, l'autre sera calculée à partir de la dimension de l'image natural size de manière à maintenir le rapport d'aspect.

Voir également scaledSize(), setClipRect() et setScaledClipRect().

QSize QImageReader::size() const

Renvoie la taille de l'image, sans lire le contenu de l'image.

Si le format d'image ne prend pas en charge cette fonctionnalité, cette fonction renvoie une taille non valide. Les gestionnaires d'images intégrés de Qt prennent tous en charge cette fonctionnalité, mais les plugins de formats d'images personnalisés ne sont pas tenus de le faire.

Voir aussi QImageIOHandler::ImageOption, QImageIOHandler::option(), et QImageIOHandler::supportsOption().

QByteArray QImageReader::subType() const

Renvoie le sous-type de l'image.

[static] QList<QByteArray> QImageReader::supportedImageFormats()

Retourne la liste des formats d'image pris en charge par QImageReader.

Par défaut, Qt peut lire les formats suivants :

FormatType MIMEDescription de l'image
BMPimage/bmpBitmap Windows
GIFimage/gifGraphic Interchange Format (optionnel)
JPGimage/jpegGroupe mixte d'experts en photographie
PNGimage/pngPortable Network Graphics (Graphique de réseau portable)
PBMimage/x-portable-bitmapBitmap portable
PGMimage/x-portable-graymapCarte de gris portable
PPMimage/x-portable-pixmapCarte de pixels portable
XBMimage/x-xbitmapBitmap X11
XPMimage/x-xpixmapX11 Pixmap
SVGimage/svg+xmlGraphique vectoriel évolutif

La lecture et l'écriture de fichiers SVG sont prises en charge par le module Qt SVG module. Le module Qt Image Formats prend en charge d'autres formats d'images.

Notez que l'instance QCoreApplication doit être créée avant que cette fonction ne soit appelée.

Voir aussi setFormat(), QImageWriter::supportedImageFormats(), et QImageIOPlugin.

[static] QList<QByteArray> QImageReader::supportedMimeTypes()

Renvoie la liste des types MIME pris en charge par QImageReader.

Notez que l'instance QApplication doit être créée avant que cette fonction ne soit appelée.

Voir aussi supportedImageFormats() et QImageWriter::supportedMimeTypes().

QList<QByteArray> QImageReader::supportedSubTypes() const

Renvoie la liste des sous-types pris en charge par une image.

bool QImageReader::supportsAnimation() const

Renvoie true si le format d'image prend en charge l'animation ; sinon, il renvoie false.

Voir également QMovie::supportedFormats().

bool QImageReader::supportsOption(QImageIOHandler::ImageOption option) const

Renvoie true si le lecteur prend en charge option; sinon, renvoie false.

Différents formats d'image prennent en charge différentes options. Appelez cette fonction pour déterminer si une certaine option est prise en charge par le format actuel. Par exemple, le format PNG vous permet d'incorporer du texte dans les métadonnées de l'image (voir text()), et le format BMP vous permet de déterminer la taille de l'image sans charger toute l'image en mémoire (voir size()).

QImageReader reader(":/image.png") ;if (reader.supportsOption(QImageIOHandler::Size))    qDebug() << "Size:" << reader.size();

Voir aussi QImageWriter::supportsOption().

QString QImageReader::text(const QString &key) const

Renvoie le texte de l'image associée à key.

La prise en charge de cette option est assurée par QImageIOHandler::Description.

Voir aussi textKeys() et QImageWriter::setText().

QStringList QImageReader::textKeys() const

Renvoie les clés de texte de cette image. Vous pouvez utiliser ces clés avec text() pour lister le texte de l'image pour une certaine clé.

La prise en charge de cette option est assurée par QImageIOHandler::Description.

Voir aussi text(), QImageWriter::setText() et QImage::textKeys().

QImageIOHandler::Transformations QImageReader::transformation() const

Renvoie les métadonnées de transformation de l'image, y compris l'orientation de l'image. Si le format ne prend pas en charge les métadonnées de transformation, QImageIOHandler::TransformationNone est renvoyé.

Voir aussi setAutoTransform() et autoTransform().

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