function ImportXFDF(const FileName: string): Integer; overload;
function ImportXFDF(Stream: TStream): Integer; overload;
ImportXFDF 會解析 XFDF XML 文件,並將其 <fields> 與 <annots> 區段套用到目前載入的 PDF
對每個 <field> 元素,完整(含點號)名稱會與文件中的 widget 註解比對,並將值寫入欄位的 /V 項目。對核取方塊與選項按鈕欄位,會使用提供的匯出值選取相符的開啟狀態外觀,因此欄位會呈現為已勾選
明確為空的 <value> 會清除相符欄位,而省略的值保持不變;深層巢狀的點號欄位名稱會保留完整階層
對每個註解元素,會在 page 屬性指定的頁面(以 0 起算)上建立新註解。建立後,匯入器會從對應的 XFDF 屬性填入 Contents、Author(title)、Name(NM)、Subject、ModificationDate、CreationDate、Icon 與註解旗標
傳回已處理的欄位與註解總數
註解匯入會套用 RGB 與內部顏色、保留明確為空的文字欄位、與處理序地區設定無關地解析十進位座標,並從 coords 屬性還原每個標記四邊形
掃描器接受帶命名空間前綴的元素與屬性、混合文字與 CDATA 節點、XML 實體參照,以及空白有意義的欄位或註解內容;無效的數值 Unicode 純量參照會拒絕該 XFDF 輸入
省略的註解 contents 元素讓新註解的內容保持不存在,而明確的空元素會寫入空值
rect 屬性對每個註解都是必要的:若缺少,該註解會被略過,而不是以零大小矩形建立
解析由手寫的 XML 掃描器執行,而非完整的 XML DOM,因此 ImportXFDF 不引入 XML DOM 相依性
SaveAscoords 還原;線段端點、polygon/polyline 頂點與 ink 清單保持唯讀,因為 PDFium 未為這些數字陣列提供對應的設定器
// Import field values and annotations from an .xfdf file
Imported := Pdf1.ImportXFDF('C:\Data\form.xfdf');
Pdf1.SaveAs('C:\Data\form_filled.pdf');