AddImageFromFile

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

Описание

Добавляет изображение из файла в выбранный документ

После добавления изображения в документ его можно рисовать на любой странице сколько угодно раз без дальнейшего роста размера PDF-файла

Поддерживаемые форматы изображений: BMP, TIFF, JPEG, PNG, GIF, WMF, EMF и WebP, а также AVIF, HEIF, HEIC и JPEG XL при наличии современного декодера изображений

Поведение версии PDF: импорт 16-битных на компонент данных изображения требует PDF 1.5. Если документ настроен на PDF 1.4 или ниже, а версия сохранения не заблокирована, AddImageFromFile автоматически повышает версию документа до PDF 1.5 и записывает 16-bit image samples в AutoBumpedFeatures. Если вызывающий код блокирует более низкую версию сохранения, шлюз совместимости отклоняет сохранение с LastErrorCode 602.

Для изображений BMP и TIFF перед этим вызовом можно сжать данные функцией CompressImages. Остальные типы изображений сжимаются автоматически

Синтаксис

Delphi

Function TPDFlib.AddImageFromFile(Const FileName: WideString; Options: Integer): Integer;

ActiveX

Function PDFlib::AddImageFromFile(FileName As String, Options As Long) As Long

DLL

int DLAddImageFromFile(int InstanceID, const wchar_t * FileName, int Options);

Параметры

FileNameИмя добавляемого файла изображения
OptionsДля многостраничных TIFF указывает номер загружаемой страницы. Для PNG: 0 = загрузить изображение как обычно 1 = загрузить альфа-канал как полутоновое изображение 2 = загрузить изображение и альфа-канал (альфа ограничена 8 битами) 3 = загрузить изображение (8 бит на канал) 4 = загрузить альфа-канал (8 бит на канал) 5 = загрузить изображение с альфа-каналом (оба ограничены 8 битами на канал) 6 = загрузить изображение и альфа-канал 7 = загрузить изображение и ICC-профиль 8 = загрузить изображение, альфа-канал и ICC-профиль с сохранением повышенной разрядности Для остальных типов изображений параметр должен быть 0. Значение Options = -1 заставляет загружать TIFF, EMF и WMF через графическую библиотеку GDI+. Многостраничные TIFF также можно загружать через GDI+, задав Options = -PageNumber (например, -3 для страницы 3)

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

0Изображение добавить не удалось: либо оно не найдено, либо формат не поддерживается
Non-zeroИзображение добавлено успешно; возвращённый ImageID можно передавать функциям вроде SelectImage и DrawImage