Spec-Zone.ru › Qt 5.14

Форматы изображений 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 доступен по коммерческим лицензиям от The Qt Company. Кроме того, он доступен по GNU Lesser General Public License, version 3 или GNU General Public License, version 2. Дополнительные сведения см. в Qt Licensing.

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

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

Лицензия libtiff

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

Лицензия BSD 3-clause "New" или "Revised"

Соображения безопасности

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

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

Spec-Zone.ru

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