property PageObjectsSnapshot[PageNumber: Integer]: TPdfPageObjectsSnapshot; // read only
type TPdfPageObjectsSnapshot = record
PageNumber: Integer;
Width: Double;
Height: Double;
Status: TPdfPageObjectSnapshotStatus;
Objects: TPdfPageObjectSnapshots;
end;
| PageNumber | Integer. Én-baseret sideindeks inden for det indlæste dokument |
| Status | TPdfPageObjectSnapshotStatus. Fuldførelsesflag, besøgte objektantal og de budgetflag, der blev nået |
| Objects | Pr.-objekt-records med type, grænser, transformation, farver, dash-arrays, sti- og clip-segmenter, content marks, billedmetadata og afgrænset tekst |
Den første adgang for en side fanger snapshotet med TPdfPageObjectSnapshotOptions.Default-budgetter. Den aktive side læses gennem dens indlæste handles, og enhver anden side indlæses og lukkes forbigående uden at ændre PageNumber eller udløse OnPageChange
Enhver adgang returnerer en dyb kopi, så ændringer af indlejrede dash-arrays, markparametre, stisegmenter, clip-stier, filtre eller strenge hverken kan ændre cachede data eller dokumentet
Fuldførte snapshots gemmes i den afgrænsede cache, der beskrives af PageObjectSnapshotCacheCapacity, og måles mod CacheBudgetBytes, og PageComplexity genbruger denne cache til objekttyper, stiantal, billedpixels og transparens
Kald uden et aktivt dokument udløser EPdfError, og et PageNumber uden for én til PageCount udløser EPdfError med beskeden Incorrect page number
Brug ReadPageObjectsSnapshot til tilpassede indfangningsbudgetter eller for bevidst at omgå cachen
Snapshot := Pdf.PageObjectsSnapshot[PageNumber];
for I := 0 to High(Snapshot.Objects) do
if Snapshot.Objects[I].ObjectType = otImage then
LogImageObject(I);