Lecture et écriture de fichiers d'images

La façon la plus courante de lire des images est de passer par les constructeurs de QImage et QPixmap ou d'appeler les fonctions QImage::load() et QPixmap::load(). En outre, Qt fournit la classe QImageReader qui donne plus de contrôle sur le processus. Selon le support sous-jacent du format d'image, les fonctions fournies par la classe peuvent économiser de la mémoire et accélérer le chargement des images.

De même, Qt fournit la classe QImageWriter qui permet de définir des options spécifiques au format, telles que le niveau gamma, le niveau de compression et la qualité, avant de stocker l'image. Si vous n'avez pas besoin de ces options, vous pouvez utiliser QImage::save() ou QPixmap::save() à la place.

QMovie

QMovie est une classe de commodité pour l'affichage d'animations, qui utilise la classe QImageReader en interne. Une fois créée, la classe QMovie fournit diverses fonctions permettant d'exécuter et de contrôler l'animation donnée.

Capture d'écran montrant comment créer une animation avec QMovie en séparant l'animation en images individuelles.

Les classes QImageReader et QImageWriter s'appuient sur la classe QImageIOHandler qui est l'interface d'E/S d'image commune à tous les formats d'image dans Qt XML. Les objets QImageIOHandler sont utilisés en interne par QImageReader et QImageWriter pour ajouter la prise en charge de différents formats d'image à Qt XML.

Une liste des formats de fichiers pris en charge est disponible via les fonctions QImageReader::supportedImageFormats() et QImageWriter::supportedImageFormats(). Qt prend en charge plusieurs formats de fichiers par défaut, et de nouveaux formats peuvent être ajoutés sous forme de modules d'extension. Les formats actuellement pris en charge sont énumérés dans la documentation des classes QImageReader et QImageWriter.

Le mécanisme d'extension de Qt Image Formats peut également être utilisé pour écrire un gestionnaire de format d'image personnalisé. Pour ce faire, il faut dériver de la classe QImageIOHandler et créer un objet QImageIOPlugin qui est une usine de création d'objets QImageIOHandler. Lorsque le plugin est installé, QImageReader et QImageWriter le chargent automatiquement et commencent à l'utiliser.

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