AddAlternateImage

Обработка изображений, необязательное содержимое

Описание

Добавляет или обновляет одно альтернативное представление базового XObject изображения, как определено в ISO 32000-1 §8.9.5.4

Альтернативные изображения могут дать высокоразрешающее представление для печати или отображаемое представление под управлением необязательного содержимого, не дублируя содержимое страницы

Синтаксис

Function TPDFlib.AddAlternateImage(BaseImageID, AlternateImageID: Integer; DefaultForPrinting: Boolean; OptionalContentID: Integer= 0): Integer;

Параметры

BaseImageIDИзображение, используемое ресурсами страницы и операторами Do потока содержимого
AlternateImageIDПривязываемый XObject изображения как вариант
DefaultForPrintingПомечает этот вариант предпочтительным для печати изображением и снимает флаг с прочих вариантов того же базового изображения
OptionalContentIDНеобязательный дескриптор OCG или OCMD, управляющий выбором этой вариации, либо 0, когда условие optional content не задано

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

Возвращает индекс альтернативы, начиная с 1, включая существующий индекс при обновлении того же изображения, либо 0 при сбое валидации

Примечания

Базовое и альтернативное изображения должны быть разными объектами изображений в выбранном документе

Изображение, уже используемое как альтернативное, не может владеть собственным массивом /Alternates, а изображение, владеющее альтернативами, не может быть присоединено как еще одна альтернатива

Передача OCG или OCMD поднимает минимальную версию PDF до 1.5; иначе минимальная версия — PDF 1.3

Все режимы PDF/A отклоняют операцию, поскольку ISO 19005 запрещает /Alternates в словарях изображений

Когда у базового изображения есть запись /OC, встроенный рендерер показывает базовое, пока оно видимо, и иначе выбирает первую видимую альтернативу, чья запись содержит /OC

Пример

BaseImageID := PDF.AddImageFromFile('preview.png', 0);
PrintImageID := PDF.AddImageFromFile('print-600dpi.tif', 0);
AlternateIndex := PDF.AddAlternateImage(BaseImageID, PrintImageID, True);

См. также

AlternateImageCount, GetAlternateImageInfo, RemoveAlternateImage, SetImageOptional, TPDFlibAlternateImageInfo