Reading and Writing Image Files¶
The most common way to read images is through
QImage
andQPixmap
‘s constructors, or by calling theload()
andload()
functions. In addition, Qt provides theQImageReader
class which gives more control over the process. Depending on the underlying support in the image format, the functions provided by the class can save memory and speed up loading of images.Likewise, Qt provides the
QImageWriter
class which supports setting format specific options, such as the gamma level, compression level and quality, prior to storing the image. If you do not need such options, you can usesave()
orsave()
instead.
QMovie
QMovie
is a convenience class for displaying animations, using theQImageReader
class internally. Once created, theQMovie
class provides various functions for both running and controlling the given animation.The
QImageReader
andQImageWriter
classes rely on theQImageIOHandler
class which is the common image I/O interface for all image formats in Qt.QImageIOHandler
objects are used internally byQImageReader
andQImageWriter
to add support for different image formats to Qt.A list of the supported file formats are available through the
supportedImageFormats()
andsupportedImageFormats()
functions. Qt supports several file formats by default, and in addition new formats can be added as plugins. The currently supported formats are listed in theQImageReader
andQImageWriter
class documentation.Qt’s plugin mechanism can also be used to write a custom image format handler. This is done by deriving from the
QImageIOHandler
class, and creating aQImageIOPlugin
object which is a factory for creatingQImageIOHandler
objects. When the plugin is installed,QImageReader
andQImageWriter
will automatically load the plugin and start using it.
© 2022 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.