property ObjectCount: Integer; // read only
Geeft het aantal page objects (text, path, image, shading, form) terug dat aan het open PDF-document is gekoppeld. De count verandert wanneer Page aan een andere pagina-index wordt toegewezen, zodat hij kan worden gebruikt als de bovengrens van een for-loop die elke ObjectHandle[Index] doorloopt
De waarde wordt rechtstreeks uit de onderliggende PDFium-engine gelezen (vereist dat Active True is en dat een huidige pagina is geladen). Wanneer het document gesloten is, geen page objects (text, path, image, shading, form) heeft binnen de opgevraagde scope of de property niet van toepassing is op de huidige PDF, is het resultaat 0
Omdat deze counter lazy door PDFium bij de eerste toegang wordt berekend, kan de eerste aanroep het parsen van de relevante object stream starten, bijvoorbeeld de /Annots-array van de pagina of de /Names-tree van het document. Latere aanroepen zijn O(1)
0 terug wanneer Active False is of wanneer de relevante PDF-dictionaryentry ontbreekt0 .. ObjectCount - 1 als het geldige bereik bij het lezen van ObjectHandle[Index]. Indexen buiten bereik gooien EPdfError
var
I: Integer;
begin
if not Pdf1.Active then Exit;
Memo1.Lines.Add(Format('%d page objects (text, path, image, shading, form)', [Pdf1.ObjectCount]));
for I := 0 to Pdf1.ObjectCount - 1 do
begin
// inspecteer elk item
Memo1.Lines.Add(Format(' [%d]', [I]));
end;
end;