property LinkAnnotationCount[PageNumber: Integer]: Integer; // read only
PageNumber argümanıyla belirlenen sayfadaki /Link subtype girdilerinin sayısını döndürür (PDF 1.7 spec section 12.5.6.5). Yalnızca geçerli sayfayla sınırlı kalan ve her annotation subtype'ını sayan AnnotationCount'dan farklı olarak, bu indexed property herhangi bir sayfayı doğrudan hedefler ve yalnızca link annotation'larını filtreler — metin ya da grafik çevresinde tıklanabilir bir bölge saran ve bir destination, URI, launch action ya da named action işaret eden girdileri
PageNumber için 1 .. PageCount aralığını verin. Active False olduğunda, sayfa dizini geçersiz olduğunda ya da sayfada hiç link annotation olmadığında değer 0 olur. PDFiumPas ayrıca “auto-detected” web URL'lerini WebLinkCount ile ayrı olarak sunar — bunlar text-pattern scanning'den gelir ve LinkAnnotationCount'un parçası değildir
Bir TLinkAnnotation kaydı almak için 0'dan LinkAnnotationCount[PageNumber] - 1'e kadar dizinlerle LinkAnnotation[PageNumber, Index] kullanın — bounding rectangle, hedef sayfa numarası, action type, çok satırlı linkler için quadrilateral points ve çözümlenmiş action payload'u içerir. Link metadata yüklemek sayfa başına O(n)'dir; çok sayıda sayfa üzerinde dolaşırken önbelleğe alın
PageNumber, kullanıcıların sayfa numaralarını ifade etme biçimine uyacak şekilde 1 tabanlıdır; çoğu array-style indexer'daki 0 tabanlı Index'ten farklıdırWebLinkCount ile birlikte kullanın0 döndürür — try/except sarmalaması olmadan threaded probe'lar içinde güvenle kullanılabilir
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;