Класс QImageReader
Класс QImageReader предоставляет независимый от формата интерфейс для чтения изображений из файлов или других устройств. Подробнее...
| Заголовок: | #include <QImageReader> |
| qmake: | QT += gui |
Примечание: Все функции в этом классе являются взаимоисключающими.
Типы
| Перечисление | ОшибкаЧтенияИзображения { ОшибкаФайлаНеНайден, ОшибкаУстройства, ОшибкаНеподдерживаемогоФормата, ОшибкаНеверныхДанных, НеизвестнаяОшибка } |
Публичные функции
| QImageReader(const QString &fileName, const QByteArray &format = QByteArray()) | |
| QImageReader(QIODevice *device, const QByteArray &format = QByteArray()) | |
| QImageReader() | |
| ~QImageReader() | |
| bool | автоОбнаружениеФорматаИзображения() const |
| bool | автоПреобразование() const |
| QColor | цветФона() const |
| bool | можноПрочитать() const |
| QRect | прямоугольникОбрезки() const |
| int | номерТекущегоИзображения() const |
| QRect | прямоугольникТекущегоИзображения() const |
| bool | определитьФорматПоСодержимому() const |
| QIODevice * | устройство() const |
| QImageReader::ОшибкаЧтенияИзображения | ошибка() const |
| QString | строкаОшибки() const |
| QString | имяФайла() const |
| QByteArray | формат() const |
| float | гамма() const |
| int | количествоИзображений() const |
| QImage::Format | форматИзображения() const |
| bool | перейтиКИзображению(int imageNumber) |
| bool | перейтиКСледующемуИзображению() |
| int | количествоЦиклов() const |
| int | задержкаСледующегоИзображения() const |
| int | качество() const |
| QImage | прочитать() |
| bool | прочитать(QImage *image) |
| QRect | масштабированныйПрямоугольникОбрезки() const |
| QSize | масштабированныйРазмер() const |
| void | установитьАвтоОбнаружениеФорматаИзображения(bool enabled) |
| void | установитьАвтоПреобразование(bool enabled) |
| void | установитьЦветФона(const QColor &color) |
| void | установитьПрямоугольникОбрезки(const QRect &rect) |
| void | установитьОпределениеФорматаПоСодержимому(bool ignored) |
| void | установитьУстройство(QIODevice *device) |
| void | установитьИмяФайла(const QString &fileName) |
| void | установитьФормат(const QByteArray &format) |
| void | установитьГамму(float gamma) |
| void | установитьКачество(int quality) |
| void | установитьМасштабированныйПрямоугольникОбрезки(const QRect &rect) |
| void | установитьМасштабированныйРазмер(const QSize &size) |
| QSize | размер() const |
| QByteArray | подтип() const |
| QList<QByteArray> | поддерживаемыеПодтипы() const |
| bool | поддерживаетАнимацию() const |
| bool | поддерживаетОпцию(QImageIOHandler::ImageOption option) const |
| QString | текст(const QString &key) const |
| QStringList | ключиТекста() const |
| QImageIOHandler::Transformations | преобразование() const |
Статические публичные члены
| QByteArray | форматИзображения(const QString &fileName) |
| QByteArray | форматИзображения(QIODevice *device) |
| QList<QByteArray> | форматыИзображенийДляMIMEтипа(const QByteArray &mimeType) |
| QList<QByteArray> | поддерживаемыеФорматыИзображений() |
| QList<QByteArray> | поддерживаемыеMIMEтипы() |
Подробное описание
Наиболее распространённый способ чтения изображений — через конструкторы QImage и QPixmap, или вызов QImage::load() и QPixmap::load(). QImageReader — специализированный класс, предоставляющий больший контроль при чтении изображений. Например, вы можете читать изображение в заданный размер, вызвав setScaledSize(), и выбрать прямоугольник обрезки, эффективно загружая только части изображения, вызвав setClipRect(). В зависимости от поддержки формата изображения, это может сэкономить память и ускорить загрузку.
Чтобы прочитать изображение, начните с создания объекта QImageReader. Передайте имя файла или указатель на устройство, а также формат изображения в конструктор QImageReader. Затем вы можете установить несколько параметров, таких как прямоугольник обрезки (вызовом setClipRect()) и размер масштабирования (вызовом setScaledSize()). canRead() возвращает изображение, если QImageReader может его прочитать (т.е. формат изображения поддерживается и устройство открыто для чтения). Вызовите read() для чтения изображения.
Если при чтении изображения возникнет ошибка, read() вернёт нулевое QImage. Затем вы можете вызвать error(), чтобы определить тип ошибки, или errorString(), чтобы получить удобочитаемое описание того, что пошло не так.
Примечание: QImageReader предполагает эксклюзивный контроль над файлом или устройством, которое назначено. Любые попытки изменить назначенный файл или устройство во время существования объекта QImageReader приведут к неопределённым результатам.
Форматы
Вызовите supportedImageFormats() для получения списка форматов, которые QImageReader может читать. QImageReader поддерживает все встроенные форматы изображений, а также любые плагины форматов изображений, которые поддерживают чтение. Вызовите supportedMimeTypes(), чтобы получить список поддерживаемых MIME-типов, которые, например, можно передать в QFileDialog::setMimeTypeFilters().
QImageReader по умолчанию автоматически определяет формат изображения, анализируя предоставленную (необязательную) строку формата, суффикс имени файла и содержимое потока данных. Вы можете включить или отключить эту функцию, вызвав setAutoDetectImageFormat().
Высококачественные версии изображений
Можно предоставить высококачественные версии изображений, если между пикселями устройства и независимыми от устройства пикселями существует масштабирование.
Высококачественная версия отмечена суффиксом @2x в базовом имени. Читаемое изображение будет иметь отношение пикселей устройства, установленное на значение 2.
Это можно отключить, установив переменную среды QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING.
См. также QImageWriter, QImageIOHandler, QImageIOPlugin, QMimeDatabase, QImage::devicePixelRatio(), QPixmap::devicePixelRatio(), QIcon, QPainter::drawPixmap(), QPainter::drawImage(), и Qt::AA_UseHighDpiPixmaps.
Документация по типам членов
перечисление QImageReader::ImageReaderError
Это перечисление описывает различные типы ошибок, которые могут произойти при чтении изображений с помощью QImageReader.
| Постоянная | Значение | Описание |
|---|---|---|
QImageReader::FileNotFoundError |
1 |
QImageReader использовался с именем файла, но файл с таким именем не был найден. Это также может произойти, если имя файла не содержало расширения, а файл с правильным расширением не поддерживается Qt. |
QImageReader::DeviceError |
2 |
QImageReader столкнулся с ошибкой устройства при чтении изображения. Подробную информацию о возникшей проблеме можно получить из информации об устройстве. |
QImageReader::UnsupportedFormatError |
3 |
Qt не поддерживает запрошенный формат изображения. |
QImageReader::InvalidDataError |
4 |
Данные изображения были некорректны, и QImageReader не смог прочитать изображение из них. Это может произойти, если файл изображения поврежден. |
QImageReader::UnknownError |
0 |
Произошла неизвестная ошибка. Если вы получили это значение после вызова read(), это, скорее всего, связано с ошибкой в QImageReader. |
Документация по функциям-членам
QImageReader::QImageReader(const QString &fileName, const QByteArray &format = QByteArray())
Создаёт объект QImageReader с именем файла fileName и форматом изображения format.
См. также setFileName().
QImageReader::QImageReader(QIODevice *device, const QByteArray &format = QByteArray())
Создаёт объект QImageReader с устройством device и форматом изображения format.
QImageReader::QImageReader()
Создаёт пустой объект QImageReader. Перед чтением изображения вызовите setDevice() или setFileName().
QImageReader::~QImageReader()
Удаляет объект QImageReader.
bool QImageReader::autoDetectImageFormat() const
Возвращает true, если автоматическое определение формата изображения включено для этого ридера; в противном случае возвращает false. По умолчанию, автоматическое определение включено.
См. также setAutoDetectImageFormat().
bool QImageReader::autoTransform() const
Возвращает true, если обработчик изображения применит метаданные преобразования при вызове read().
Эта функция была добавлена в Qt 5.5.
См. также setAutoTransform(), transformation() и read().
QColor QImageReader::backgroundColor() const
Возвращает цвет фона, используемый при чтении изображения. Если формат изображения не поддерживает установку цвета фона, возвращается недействительный цвет.
Эта функция была добавлена в Qt 4.1.
См. также setBackgroundColor() и read().
bool QImageReader::canRead() const
Возвращает true, если изображение может быть прочитано для устройства (т.е. формат изображения поддерживается, и данные устройства кажутся валидными); в противном случае возвращает false.
canRead() — это лёгкая функция, которая выполняет только быструю проверку, чтобы увидеть, являются ли данные изображения валидными. read() может всё ещё вернуть false после того, как canRead() вернёт true, если данные изображения повреждены.
Примечание: Обращение к QMimeDatabase обычно является лучшим подходом, чем эта функция, для идентификации потенциально не являющихся изображениями файлов или данных.
Для изображений, которые поддерживают анимацию, canRead() возвращает false после чтения всех кадров.
См. также read(), supportedImageFormats() и QMimeDatabase.
QRect QImageReader::clipRect() const
Возвращает прямоугольник обрезки (также известный как ROI, или область интереса) изображения. Если прямоугольник обрезки не был установлен, возвращается недействительный QRect.
См. также setClipRect().
int QImageReader::currentImageNumber() const
Для форматов изображений, которые поддерживают анимацию, эта функция возвращает номер последовательности текущего кадра. Если формат изображения не поддерживает анимацию, возвращается 0.
Функция возвращает -1, если произошла ошибка.
См. также supportsAnimation(), QImageIOHandler::currentImageNumber() и canRead().
QRect QImageReader::currentImageRect() const
Для форматов изображений, которые поддерживают анимацию, эта функция возвращает прямоугольник для текущего кадра. В противном случае возвращается пустой прямоугольник.
См. также supportsAnimation() и QImageIOHandler::currentImageRect().
bool QImageReader::decideFormatFromContent() const
Возвращает значение, указывающее, должен ли ридер изображения определить, какой плагин использовать, только на основе содержимого потока данных, а не на расширении файла.
См. также setDecideFormatFromContent().
QIODevice *QImageReader::device() const
Возвращает устройство, текущее назначенное для QImageReader, или nullptr если ни одно устройство не назначено.
См. также setDevice().
QImageReader::ImageReaderError QImageReader::error() const
Возвращает тип ошибки, произошедшей последней.
См. также ImageReaderError и errorString().
QString QImageReader::errorString() const
Возвращает удобочитаемое описание последней произошедшей ошибки.
См. также error().
QString QImageReader::fileName() const
Если текущее назначенное устройство является QFile, или если был вызван setFileName(), эта функция возвращает имя файла, из которого QImageReader считывает изображение. В противном случае (т.е., если ни одно устройство не назначено или устройство не является QFile), возвращается пустой QString.
См. также setFileName() и setDevice().
QByteArray QImageReader::format() const
Возвращает формат, используемый QImageReader для чтения изображений.
Вы можете вызвать эту функцию после назначения устройства чтецу, чтобы определить формат устройства. Например:
QImageReader reader("image.png");
// reader.format() == "png" Если чтец не может прочитать ни одно изображение с устройства (например, там нет изображения или изображение уже было прочитано), или если формат не поддерживается, эта функция возвращает пустой QByteArray().
См. также setFormat() и supportedImageFormats().
float QImageReader::gamma() const
Возвращает уровень гаммы декодированного изображения. Если был вызван setGamma() и коррекция гаммы поддерживается, будет возвращена установленная гамма. Если уровень гаммы не поддерживается форматом изображения, возвращается 0.0.
Эта функция была добавлена в Qt 5.6.
См. также setGamma().
int QImageReader::imageCount() const
Для форматов изображений, которые поддерживают анимацию, эта функция возвращает общее количество изображений в анимации. Если формат не поддерживает анимацию, возвращается 0.
Функция возвращает -1, если произошла ошибка.
См. также supportsAnimation(), QImageIOHandler::imageCount(), и canRead().
QImage::Format QImageReader::imageFormat() const
Возвращает формат изображения, не фактически читая содержимое изображения. Формат описывает формат изображения, возвращаемый QImageReader::read(), а не формат фактического изображения.
Если формат изображения не поддерживает эту функцию, эта функция возвращает недопустимый формат.
Эта функция была добавлена в Qt 4.5.
См. также QImageIOHandler::ImageOption, QImageIOHandler::option(), и QImageIOHandler::supportsOption().
[static] QByteArray QImageReader::imageFormat(const QString &fileName)
Если поддерживается, эта функция возвращает формат изображения файла fileName. В противном случае возвращается пустая строка.
[static] QByteArray QImageReader::imageFormat(QIODevice *device)
Если поддерживается, эта функция возвращает формат изображения устройства device. В противном случае возвращается пустая строка.
См. также QImageReader::autoDetectImageFormat().
[static] QList<QByteArray> QImageReader::imageFormatsForMimeType(const QByteArray &mimeType)
Возвращает список форматов изображений, соответствующих mimeType.
Обратите внимание, что экземпляр QGuiApplication должен быть создан до вызова этой функции.
Эта функция была добавлена в Qt 5.12.
См. также supportedImageFormats() и supportedMimeTypes().
bool QImageReader::jumpToImage(int imageNumber)
Для форматов изображений, которые поддерживают анимацию, эта функция переходит к изображению с номером последовательности imageNumber, возвращая true, если операция выполнена успешно, или false, если соответствующее изображение не найдено.
Следующий вызов read() будет пытаться прочитать это изображение.
См. также jumpToNextImage() и QImageIOHandler::jumpToImage().
bool QImageReader::jumpToNextImage()
Для форматов изображений, которые поддерживают анимацию, эта функция переходит к следующему изображению, возвращая true, если операция выполнена успешно, или false, если следующего изображения в анимации нет.
По умолчанию реализация вызывает read(), а затем отбрасывает полученное изображение, но обработчик изображений может иметь более эффективный способ реализации этой операции.
См. также jumpToImage() и QImageIOHandler::jumpToNextImage().
int QImageReader::loopCount() const
Для форматов изображений, которые поддерживают анимацию, эта функция возвращает количество раз, которое анимация должна повториться. Если функция возвращает -1, это может означать, что анимация должна повторяться бесконечно или что произошла ошибка. Если произошла ошибка, canRead() вернёт false.
См. также supportsAnimation(), QImageIOHandler::loopCount(), и canRead().
int QImageReader::nextImageDelay() const
Для форматов изображений, которые поддерживают анимацию, эта функция возвращает количество миллисекунд ожидания до отображения следующего кадра анимации. Если формат изображения не поддерживает анимацию, возвращается 0.
Функция возвращает -1, если произошла ошибка.
См. также supportsAnimation(), QImageIOHandler::nextImageDelay(), и canRead().
int QImageReader::quality() const
Возвращает значение качества формата изображения.
Эта функция была добавлена в Qt 4.2.
См. также setQuality().
QImage QImageReader::read()
Читает изображение с устройства. При успехе возвращается прочитанное изображение; в противном случае возвращается null QImage. Затем можно вызвать error() для определения типа ошибки или errorString() для получения удобочитаемого описания ошибки.
Для форматов изображений, которые поддерживают анимацию, повторные вызовы read() вернут следующий кадр. Когда все кадры будут прочитаны, будет возвращено null-изображение.
См. также canRead(), supportedImageFormats(), supportsAnimation(), и QMovie.
bool QImageReader::read(QImage *image)
Это перегруженная функция.
Читает изображение с устройства в image, которое должно указывать на QImage. Возвращает true при успехе; в противном случае возвращает false.
Если image имеет тот же формат и размер, что и данные изображения, которые собираются прочитать, этой функции может не потребоваться выделять новое изображение перед чтением. Благодаря этому она может быть быстрее, чем другой перегруз read(), который всегда создаёт новое изображение; особенно при чтении нескольких изображений с одинаковым форматом и размером.
QImage icon(64, 64, QImage::Format_RGB32);
QImageReader reader("icon_64x64.bmp");
if (reader.read(&icon)) {
// Display icon
} Для форматов изображений, которые поддерживают анимацию, повторные вызовы read() вернут следующий кадр. Когда все кадры будут прочитаны, будет возвращено null-изображение.
См. также canRead(), supportedImageFormats(), supportsAnimation(), и QMovie.
QRect QImageReader::scaledClipRect() const
Возвращает масштабированный прямоугольник обрезки изображения.
См. также setScaledClipRect().
QSize QImageReader::scaledSize() const
Возвращает масштабированный размер изображения.
См. также setScaledSize().
void QImageReader::setAutoDetectImageFormat(bool enabled)
Если enabled равно true, автоматическое определение формата изображения включено; в противном случае — выключено. По умолчанию автоматическое определение включено.
QImageReader использует расширенный подход к определению формата изображения; во-первых, если вы передаёте имя файла в QImageReader, то он попытается определить расширение файла, если указанный файл не существует, добавляя поддерживаемые расширения по умолчанию к имени файла по одному за раз. Затем он использует следующий подход для определения формата изображения:
- Сначала запрашиваются плагины изображений, основываясь на необязательной строке формата или суффиксе имени файла (если устройство источника — это файл). Обнаружение содержимого на этом этапе не выполняется. QImageReader выберет первый плагин, который поддерживает чтение для данного формата.
- Если ни один плагин не поддерживает формат изображения, проверяются встроенные обработчики Qt, основываясь на необязательной строке формата или суффиксе имени файла.
- Если не найдены ни способные плагины, ни встроенные обработчики, каждый плагин проверяется путём анализа содержимого потока данных.
- Если ни один плагин не смог определить формат изображения на основе содержимого данных, проверяется каждый встроенный обработчик изображений, анализируя содержимое.
- Наконец, если все вышеперечисленные подходы не увенчались успехом, QImageReader сообщит об ошибке при попытке чтения изображения.
Выключив автоматическое определение формата изображения, QImageReader будет запрашивать только плагины и встроенные обработчики, основываясь на строке формата (то есть расширения имён файлов не проверяются).
См. также autoDetectImageFormat(), QImageIOHandler::canRead(), и QImageIOPlugin::capabilities().
void QImageReader::setAutoTransform(bool enabled)
Определяет, что изображения, возвращаемые read(), должны иметь метаданные преобразования автоматически применёнными, если enabled равно true.
Эта функция была добавлена в Qt 5.5.
См. также autoTransform(), transformation(), и read().
void QImageReader::setBackgroundColor(const QColor &color)
Устанавливает цвет фона в color. Ожидается, что форматы изображений, которые поддерживают эту операцию, инициализируют фон цветом color перед чтением изображения.
Эта функция была добавлена в Qt 4.1.
См. также backgroundColor() и read().
void QImageReader::setClipRect(const QRect &rect)
Устанавливает прямоугольник обрезки изображения (также известный как ROI, или область интереса) в rect. Координаты rect относительны к размеру изображения без преобразований, возвращаемому size().
См. также clipRect(), setScaledSize(), и setScaledClipRect().
void QImageReader::setDecideFormatFromContent(bool ignored)
Если ignored установлено в true, то читатель изображений проигнорирует указанные форматы или расширения файлов и определит, какой плагин использовать, только основываясь на содержимом в потоке данных.
Установка этого флага означает, что все плагины изображений загружаются. Каждый плагин прочитает первые байты данных изображения и решит, совместим ли он с ним или нет.
Это также отключает автоматическое обнаружение формата изображения.
См. также decideFormatFromContent().
void QImageReader::setDevice(QIODevice *device)
Устанавливает устройство QImageReader в device. Если устройство уже установлено, старое устройство удаляется из QImageReader и в противном случае остаётся без изменений.
Если устройство ещё не открыто, QImageReader попытается открыть его в режиме QIODevice::ReadOnly, вызвав open(). Обратите внимание, что это не работает для некоторых устройств, таких как QProcess, QTcpSocket и QUdpSocket, где требуется дополнительная логика для открытия устройства.
См. также device() и setFileName().
void QImageReader::setFileName(const QString &fileName)
Устанавливает имя файла QImageReader в fileName. Внутренне QImageReader создаст объект QFile и откроет его в режиме QIODevice::ReadOnly, а затем будет использовать его для чтения изображений.
Если fileName не содержит расширения файла (например, .png или .bmp), QImageReader будет перебирать все поддерживаемые расширения, пока не найдёт совпадение.
См. также fileName(), setDevice(), и supportedImageFormats().
void QImageReader::setFormat(const QByteArray &format)
Устанавливает формат, который QImageReader будет использовать для чтения изображений, в format. format — это строка текста, регистронезависимая. Пример:
QImageReader reader;
reader.setFormat("png"); // same as reader.setFormat("PNG"); Вы можете вызвать supportedImageFormats() для получения полного списка форматов, которые поддерживает QImageReader.
См. также format().
void QImageReader::setGamma(float gamma)
Это функция, специфичная для формата изображения, которая заставляет изображения с информацией о гамма-коррекции быть скорректированными по гамма до значения gamma. Для форматов изображений, которые не поддерживают гамма-коррекцию, это значение игнорируется.
Чтобы выполнить гамма-коррекцию до стандартного цветового пространства ПК, установите гамму в 1/2.2.
Эта функция была добавлена в Qt 5.6.
См. также gamma().
void QImageReader::setQuality(int quality)
Устанавливает значение качества формата изображения в quality.
Некоторые форматы изображений, особенно сжатые, предполагают компромисс между а) визуальным качеством результирующего изображения и б) временем декодирования. Эта функция устанавливает уровень этого компромисса для форматов изображений, которые его поддерживают.
В случае масштабирования чтения изображения, значение качества также может влиять на уровень компромисса между визуальным качеством и скоростью выполнения алгоритма масштабирования.
Диапазон значений quality зависит от формата изображения. Например, формат «jpeg» поддерживает диапазон качества от 0 (низкое визуальное качество) до 100 (высокое визуальное качество).
Эта функция была добавлена в Qt 4.2.
См. также quality() и setScaledSize().
void QImageReader::setScaledClipRect(const QRect &rect)
Устанавливает прямоугольник масштабированной обрезки в rect. Масштабированный прямоугольник обрезки — это прямоугольник обрезки (также известный как ROI, или область интереса), который применяется после масштабирования изображения.
См. также scaledClipRect() и setScaledSize().
void QImageReader::setScaledSize(const QSize &size)
Устанавливает масштабированный размер изображения в size. Масштабирование выполняется после начального прямоугольника обрезки, но перед применением масштабированного прямоугольника обрезки. Алгоритм, используемый для масштабирования, зависит от формата изображения. По умолчанию (то есть, если формат изображения не поддерживает масштабирование), QImageReader будет использовать QImage::scale() с Qt::SmoothScaling.
См. также scaledSize(), setClipRect(), и setScaledClipRect().
QSize QImageReader::size() const
Возвращает размер изображения без фактического чтения содержимого изображения.
Если формат изображения не поддерживает эту функцию, эта функция возвращает недопустимый размер. Встроенные обработчики изображений Qt поддерживают эту функцию, но пользовательские плагины форматов изображений не обязаны это делать.
См. также QImageIOHandler::ImageOption, QImageIOHandler::option(), и QImageIOHandler::supportsOption().
QByteArray QImageReader::subType() const
Возвращает подтип изображения.
Эта функция была добавлена в Qt 5.4.
[static] QList<QByteArray> QImageReader::supportedImageFormats()
Возвращает список форматов изображений, поддерживаемых QImageReader.
По умолчанию Qt может читать следующие форматы:
| Формат | MIME тип | Описание |
|---|---|---|
| BMP | image/bmp | Windows Bitmap |
| GIF | image/gif | Формат Graphic Interchange (необязательно) |
| JPG | image/jpeg | Joint Photographic Experts Group |
| PNG | image/png | Portable Network Graphics |
| PBM | image/x-portable-bitmap | Portable Bitmap |
| PGM | image/x-portable-graymap | Portable Graymap |
| PPM | image/x-portable-pixmap | Portable Pixmap |
| XBM | image/x-xbitmap | X11 Bitmap |
| XPM | image/x-xpixmap | X11 Pixmap |
| SVG | image/svg+xml | Scalable Vector Graphics |
Чтение и запись файлов SVG поддерживаются модулем Qt SVG. Модуль Qt Image Formats предоставляет поддержку дополнительных форматов изображений.
Обратите внимание, что экземпляр QApplication должен быть создан до вызова этой функции.
См. также setFormat(), QImageWriter::supportedImageFormats(), и QImageIOPlugin.
[static] QList<QByteArray> QImageReader::supportedMimeTypes()
Возвращает список MIME-типов, поддерживаемых QImageReader.
Обратите внимание, что экземпляр QApplication должен быть создан до вызова этой функции.
См. также supportedImageFormats() и QImageWriter::supportedMimeTypes().
QList<QByteArray> QImageReader::supportedSubTypes() const
Возвращает список подтипов, поддерживаемых изображением.
Эта функция была добавлена в Qt 5.4.
bool QImageReader::supportsAnimation() const
Возвращает true если формат изображения поддерживает анимацию; в противном случае возвращается false.
Эта функция была добавлена в Qt 4.1.
См. также QMovie::supportedFormats().
bool QImageReader::supportsOption(QImageIOHandler::ImageOption option) const
Возвращает true если читатель поддерживает option; в противном случае возвращает false.
Разные форматы изображений поддерживают разные опции. Используйте эту функцию, чтобы определить, поддерживает ли текущий формат определенную опцию. Например, формат PNG позволяет встраивать текст в метаданные изображения (см. text()), а формат BMP позволяет определить размер изображения без загрузки всего изображения в память (см. size()).
QImageReader reader(":/image.png");
if (reader.supportsOption(QImageIOHandler::Size))
qDebug() << "Size:" << reader.size(); Эта функция была добавлена в Qt 4.2.
См. также QImageWriter::supportsOption().
QString QImageReader::text(const QString &key) const
Возвращает текст изображения, связанный с key.
Поддержка этой опции реализована через QImageIOHandler::Description.
Эта функция была добавлена в Qt 4.1.
См. также textKeys() и QImageWriter::setText().
QStringList QImageReader::textKeys() const
Возвращает ключи текста для этого изображения. Эти ключи можно использовать с text() для получения текста изображения для определенного ключа.
Поддержка этой опции реализована через QImageIOHandler::Description.
Эта функция была добавлена в Qt 4.1.
См. также text(), QImageWriter::setText(), и QImage::textKeys().
QImageIOHandler::Transformations QImageReader::transformation() const
Возвращает метаданные преобразования изображения, включая ориентацию изображения. Если формат не поддерживает метаданные преобразования, возвращается QImageIOHandler::Transformation_None.
Эта функция была добавлена в Qt 5.5.
См. также setAutoTransform() и autoTransform().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qimagereader.html