property AnnotationCount: Integer; // read only
AnnotationCount geeft de lengte van de /Annots-array van de huidige
pagina terug (PDF 1.7-specificatie sectie 12.5). Alle annotatiesubtypen worden geteld
— tekstnotities, markeringen, onderstrepingen, free-text, ink, stempels, polygoon-
en polylijnvormen, link-annotaties, pop-updialogen en formulierwidget-annotaties.
Combineer de waarden van elke pagina om het documentbrede annotatietotaal te verkrijgen.
De eigenschap vereist dat Active True is en leest uit de
pagina die door PageNumber wordt aangegeven. Wanneer de pagina geen
annotaties heeft of het document niet is geladen, is de waarde 0. Gebruik
Annotation[Index] met indexen van 0 tot en met
AnnotationCount - 1 om een TPdfAnnotation-record op te halen
dat het subtype, de begrenzende rechthoek, kleur, flag-bitmask en inhoudstekst van elke
entry beschrijft.
Het doorlopen van annotaties is O(n), maar elke Annotation[Index]-aanroep
opent een verse PDFium-handle en decodeert Unicode-inhoud op aanvraag; cach het resultaat
wanneer u het meerdere keren nodig hebt. Het muteren van de annotaties van een pagina
(invoegen, verwijderen) maakt indexen ongeldig — herstart de loop of herlees
AnnotationCount na de wijziging.
FormFieldCount als u alleen veldwidgets wilt.LinkAnnotationCount[PageNumber],
dat direct filtert op subtype /Link over elke pagina.
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;