property AnnotationCount: Integer; // read only
AnnotationCount returnerer længden af den aktuelle sides /Annots-array
(PDF 1.7-specifikationen afsnit 12.5). Alle annotation-subtyper tælles — tekstnoter,
fremhævninger, understregninger, free-text, ink, stempel, polygon- og polylinje-former,
link-annotationer, popup-dialoger og form-widget-annotationer. Kombinér værdierne fra
hver side for at få det samlede dokument-annotationstal.
Egenskaben kræver at Active er True, og læser fra den side,
der angives af PageNumber. Når siden ikke har nogen annotationer, eller
dokumentet ikke er indlæst, er værdien 0. Brug Annotation[Index]
med indekser fra 0 til AnnotationCount - 1 for at hente en
TPdfAnnotation-post, der beskriver subtypen, afgrænsningsrektanglet, farven,
flag-bitmasken og indholdsteksten for hver post.
Iteration af annotationer er O(n), men hvert Annotation[Index]-kald
åbner et nyt PDFium-handle og afkoder Unicode-indhold on-demand; cache resultatet,
hvis du skal bruge det flere gange. Ændring af en sides annotationer (indsættelser,
sletninger) invaliderer indekser — genstart løkken eller genlæs AnnotationCount
efter ændringen.
FormFieldCount, hvis du kun vil have felt-widgets.LinkAnnotationCount[PageNumber] til kun-link-opregning,
som filtrerer til subtypen /Link direkte på tværs af enhver side.
var I: Integer;
var A: TPdfAnnotation;
for I := 0 to Pdf1.AnnotationCount - 1 do
begin
A := Pdf1.Annotation[I];
Memo1.Lines.Add(Format('%d: subtype=%d text=%s',
[I, Ord(A.Subtype), A.ContentsText]));
end;