DecodeModernImageToPNG

Обработка изображений

Описание

Декодирует поток современного изображения в поток изображения PNG

Сначала выполняется зарегистрированный callback бэкенда; без него нативная библиотека кодеков растрирует изображение, по запросу применит ориентацию EXIF и сохранит встроенный профиль ICC

Синтаксис

Delphi

Function DecodeModernImageToPNG(InStream, OutPNG: TStream;
  ImageFormat: TPDFlibModernImageFormat;
  ApplyOrientation: Boolean= True): Boolean;

Параметры

InStreamПоток с полным современным изображением; позиция сохраняется и восстанавливается
OutPNGПоток, принимающий байты PNG; с callback бэкенда при успехе сбрасывается в позицию 0 и подгоняется под размер вывода
ImageFormatДекодируемый формат, результат DetermineModernImageFormat; mifUnknown сразу завершается ошибкой
ApplyOrientationПрименяет сохранённую ориентацию, чтобы PNG стоял прямо; включено по умолчанию

Возвращаемые значения

FalseБэкенд не зарегистрирован, а модуль кодеков отсутствует или не имеет нужного кодера, формат неизвестен либо декодирование не удалось
TrueOutPNG содержит полное изображение PNG

Примечания

Семейство AddModernImageFromStream оборачивает этот помощник и встраивает PNG в страницу; прямой вызов — способ предварительно конвертировать или просмотреть изображения без экземпляра TPDFlib

См. также

DetermineModernImageFormat, RegisterModernImageDecoderBackend, AddModernImageFromStream, ModernImageCodecAvailable