標準 XFDF stamp 外觀傳輸
Stamp 註解可以經 Adobe XFDF 的 appearance 元素匯出與匯入其真實的 PDF 外觀串流與資源字典
stamp-typed-xml-v1 profile 使用 base64 編碼的 UTF-8 型別化 XML,如 Adobe XFDF 3 規範所述;解碼後的承載表示 PDF 物件,而不是完整的 PDF 或 FDF 檔案
映射資源
頂層的 DICT KEY="AP" 包含必需的 normal N Form 串流,以及選用的 rollover R 與 down D 串流
Form 保留有限的四數值 BBox、選用的六數值 Matrix 與受支援的資源圖,包含字型及其內嵌程式、影像與 soft mask、色彩空間、pattern、shading、function 與圖形狀態
型別化值包含 DICT、STREAM、ARRAY、INT、FIXED、NAME、BOOL 與 NULL;字典鍵與名稱值保留其語義 PDF 名稱,合法的來源數字 token 保留十進位精度
串流的 DATA 支援 MODE="RAW" 或 MODE="FILTERED",配 ENCODING="HEX" 或七位元 ENCODING="ASCII";RAW 保留編碼位元組及其 Filter/DecodeParms,FILTERED 安裝解碼後的位元組並剔除過期的過濾詮釋資料
匯出使用 RAW 十六進位資料並按真實位元組重新產生串流 Length;經驗證的加密串流在交換前解碼或解密,並在儲存的修訂版中正確加密
共用的無環資源按等價值展開,匯入時帶獨立物件參照;本 profile 不保留參照身分
內嵌字型程式位元組及其內嵌旗標被保留,不改授權位元,也不替換成別的字型程式
API 與 callback
原生交易用 HPDFExportHeadlessAnnotationsXFDF 與 SaveAnnotationsXFDFToFile,呼叫端自有的圖配接器用 HPDFXFDFExportAnnotations 與 HPDFXFDFImportAnnotations 的設有上限 overload
既有的Windows 檔案工作與 V1 callback 以及 Linux V1 callback 沿用其既有註解操作與記錄配置
能力對一般註解外觀保留 appearanceImport=false,並新增 stampAppearanceImport=true、appearanceProfile="stamp-typed-xml-v1"、appearanceTypes=["stamp"]、appearanceDataModes=["RAW","FILTERED"]、appearanceEncodings=["ASCII","HEX"] 與 appearanceResources="acyclic-expanded-graph"
交易與限制
輸入 XML、base64、名稱、串流編碼、資源型別、語義字典鍵與 Form 幾何都在發佈前驗證;畸形資料、環、累計限額耗盡或取消會讓完整交易失敗
XFDF 限制涵蓋註解操作全程的總輸入輸出、XML 與圖節點、深度、串流儲存與工作預留
匯入保留目前未儲存圖狀態、AES R5/R6 安全性與經驗證的認證限制;P1/P2 拒絕註解變更,P3 保留原始簽署位元組前綴與真實簽章完整性
經授權的空匯入在沒有未儲存變更時回傳零並精確保留目前 PDF 位元組;髒圖變更會被儲存而不是丟棄
Windows 與 Linux callback context 只有在 PDF 輸出、JSON 結果輸出與最終取消檢查都成功後才採納準備好的 PDF;失敗或部分 callback 保留先前 context,第一個失敗的 writer 保持黏性
僅註解匯入把空 fields 容器與無值欄位宣告當成 no-op 詮釋資料;真實表單值與 rich 欄位更新需要單獨的經驗證 form 資料操作
剩餘工作
通用註解 AP 傳輸、外觀狀態字典、字串資源值、非空 DEFINE/REF 參照、有環圖、Redact overlayappearance、註解替換/移除與 FDF 註解交換仍是獨立工作
沒有傳輸 stamp 外觀的幾何與文字註解保持既有行為;本操作不合成任意註解外觀,也不執行 action
共用設限配接器在承載轉換之前預留 raw 註解鍵與展開的 AP 圖,並在配置這些表示之前預留 base64 空白與解碼後的 DATA;PDF 名稱轉換用線性掃描並帶取消檢查點