Spec-Zone.ru › Qt 6.0

Форматы изображений Qt

Ядро библиотеки Qt Gui по умолчанию поддерживает чтение и запись файлов изображений самых распространённых форматов: PNG, JPEG, BMP, GIF и ещё несколько, см. Чтение и запись файлов изображений. Модуль дополнений Qt Image Formats предоставляет необязательную поддержку других форматов файлов изображений.

Поддержка форматов файлов реализована прозрачно, через плагины для системы ввода/вывода изображений Qt. Таким образом, этот модуль не предоставляет собственного API. Вместо этого функциональность доступна так же, как и для других операций ввода/вывода изображений в Qt: через QImage::load() и QImage::save(). Или, для более детального управления, через QImageReader и QImageWriter.

Плагины ввода/вывода изображений

Фактическое кодирование и декодирование формата файла выполняется библиотекой кодеков. Кодек может быть Qt или сторонним кодом. В случае стороннего кодека процесс сборки будет искать его среди системных библиотек. Если он не найден, может быть использован встроенный экземпляр (в src/3rdparty).

Формат Описание Поддержка Сторонний кодек
ICNS Изображение значка Apple Чтение/запись Нет
JP2 Формат изображений JPEG 2000 Чтение/запись Да (не в комплекте)
MNG Многоизобразительные сетевые графики Чтение Да (не в комплекте)
TGA Графический адаптер Truevision Чтение Нет
TIFF Формат файлов изображений с метками Чтение/запись Да (в комплекте)
WBMP Беспроводной растровый графический файл Чтение/запись Нет
WEBP WEBP Чтение/запись Да (в комплекте)

Примечание: Некоторые встроенные сторонние кодеки больше не поддерживаются. Они предоставляются только для ручных сборки, и не используются как резервный вариант, если системные библиотеки недоступны.

Примечание: По соображениям безопасности обработчик Direct Draw Surface (DDS) не включён по умолчанию начиная с Qt 5.8. Пользователи, которые всё ещё хотят использовать этот обработчик, могут собрать его из исходного проекта.

Развёртывание

После сборки плагины Qt Image Formats размещаются как динамические библиотеки в каталоге плагинов во время выполнения (обычно plugins/imageformats), вместе с плагинами по умолчанию для форматов изображений. Они могут быть развернуты на целевой системе так же, как и другие плагины, см. документацию Развёртывание плагинов.

Эволюция модуля

Изменения в Qt Image Formats перечисляет важные изменения в API и функциональности модуля, выполненные для серии Qt 6.

Лицензии и ссылки

Qt Image Formats доступен под коммерческими лицензиями от The Qt Company. Кроме того, он доступен под GNU Lesser General Public License, версия 3, или GNU General Public License, версия 2. Для получения дополнительной информации см. Лицензирование Qt.

Кроме того, Qt Image Formats потенциально содержит сторонние модули под следующими лицензиями с открытым кодом:

TIFF Software Distribution (libtiff), версия 4.1.0

Лицензия libtiff

WebP (libwebp), версия 1.1.0

Лицензия BSD 3-clause "Новая" или "Пересмотренная"

Учёт мер безопасности

Поскольку эти форматы файлов используются реже, кодеки могут быть менее тщательно проверены на предмет возможных уязвимостей. Как всегда, при создании приложений, которые могут использоваться для декодирования неконтролируемых файлов данных, необходимо проявлять осторожность.

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

Spec-Zone.ru

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