AddAlternateImage

影像處理、選用內容

描述

依 ISO 32000-1 §8.9.5.4,加入或更新基礎影像 XObject 的一個替代表示

替代影像可提供高解析度列印表示,或由選用內容控制的顯示表示,不必複製頁面內容

語法

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

參數

BaseImageID被頁面資源與內容串流 Do 運算子使用的影像
AlternateImageID要以 Variant 附加的影像 XObject
DefaultForPrinting把此變體標記為偏好的列印影像,並清除同一基礎影像其他變體上的該旗標
OptionalContentID選配的 OCG 或 OCMD 控制代碼,控制此變體的選用;0 表示沒有選用內容條件

傳回值

傳回以 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