property LinkAnnotationCount[PageNumber: Integer]: Integer; // read only
LinkAnnotationCount 傳回以 1 為基底的 PageNumber 引數
所指定頁面上子類型 /Link 條目的數量
(PDF 1.7 規格第 12.5.6.5 節)。與僅限目前作用中頁面、
並計入所有註解子類型的 AnnotationCount 不同,
此索引屬性可直接指定任意頁面,並僅篩選連結註解 —
也就是在文字或圖形外圍包住可點擊區域,並指向目的地、URI、
啟動動作或具名動作的條目
PageNumber 請傳入 1 .. PageCount 範圍內的值。當
Active 為 False、頁面索引無效,
或頁面本身不含連結註解時,值為 0。PDFium Delphi Component 另透過
WebLinkCount 單獨公開「自動偵測」的網頁 URL —
這些來自文字模式掃描,不計入 LinkAnnotationCount
搭配 LinkAnnotation[PageNumber, Index] 並使用 0 到
LinkAnnotationCount[PageNumber] - 1 的索引可取得
TLinkAnnotation 記錄 — 包含週界矩形、目標頁碼、
動作類型、多行連結的四邊形點,以及已解析的動作裝載。載入連結中繼資料
對每頁而言是 O(n);逐一處理多頁時請快取
Index 不同WebLinkCount0 而不是引發例外 — 可安全用於
執行緒內探測,無需包覆 try/except
var P, I: Integer;
var Link: TLinkAnnotation;
for P := 1 to Pdf1.PageCount do
for I := 0 to Pdf1.LinkAnnotationCount[P] - 1 do
begin
Link := Pdf1.LinkAnnotation[P, I];
Memo1.Lines.Add(Format('p%d link → page %d', [P, Link.PageNumber]));
end;