Spec-Zone.ru › Qt

Чтение и запись файлов изображений

Наиболее распространенный способ чтения изображений — через конструкторы QImage и QPixmap, или вызывая функции QImage::load() и QPixmap::load(). Кроме того, Qt предоставляет класс QImageReader, который предоставляет больший контроль над процессом. В зависимости от поддержки в формате изображения, функции, предоставляемые классом, могут экономить память и ускорять загрузку изображений.

Аналогично, Qt предоставляет класс QImageWriter, который поддерживает установку параметров, специфичных для формата, таких как уровень гаммы, уровень сжатия и качество, перед сохранением изображения. Если вам не нужны такие параметры, вы можете использовать QImage::save() или QPixmap::save() вместо этого.

QMovie

QMovie — это удобный класс для отображения анимаций, использующий класс QImageReader внутри. После создания класс QMovie предоставляет различные функции для запуска и управления данной анимацией.

Классы QImageReader и QImageWriter полагаются на класс QImageIOHandler, который является общим интерфейсом ввода-вывода изображений для всех форматов изображений в Qt. Объекты QImageIOHandler используются внутри QImageReader и QImageWriter для добавления поддержки различных форматов изображений в Qt.

Список поддерживаемых форматов файлов доступен через функции QImageReader::supportedImageFormats() и QImageWriter::supportedImageFormats(). Qt по умолчанию поддерживает несколько форматов файлов, а также новые форматы могут быть добавлены как плагины. Текущие поддерживаемые форматы перечислены в документации классов QImageReader и QImageWriter.

Механизм плагинов Qt также можно использовать для написания обработчика пользовательского формата изображения. Это делается путем наследования от класса QImageIOHandler и создания объекта QImageIOPlugin, который является фабрикой для создания объектов QImageIOHandler. При установке плагина QImageReader и QImageWriter автоматически загрузят плагин и начнут его использовать.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/paintsystem-images.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API