property PageObjectsSnapshot[PageNumber: Integer]: TPdfPageObjectsSnapshot; // read only
type TPdfPageObjectsSnapshot = record
PageNumber: Integer;
Width: Double;
Height: Double;
Status: TPdfPageObjectSnapshotStatus;
Objects: TPdfPageObjectSnapshots;
end;
| PageNumber | Integer. 1-pohjainen sivuindeksi ladatussa dokumentissa |
| Status | TPdfPageObjectSnapshotStatus. Valmistumislippu, käydyt objektilukumäärät ja budjettliput, jotka ylittyivät |
| Objects | Objektikohtaiset tietueet tyypillä, rajoilla, muunnoksilla, väreillä, viivakuvioilla, polku- ja leikkaussegmenteillä, sisältömerkinnöillä, kuvametadalla ja rajatulla tekstillä |
Sivun ensimmäinen käsittely tallentaa tilannevedoksen TPdfPageObjectSnapshotOptions.Default-budjeteilla. Aktiivinen sivu luetaan sen ladattujen kahvojen kautta, ja mikä tahansa muu sivu ladataan ja suljetaan väliaikaisesti muuttamatta PageNumber-arvoa tai laukaisematta OnPageChange-tapahtumaa
Jokainen käsittely palauttaa syväkopion, joten sisäkkäisten viivakuvioiden, merkintäparametrien, polkusegmenttien, leikkauspolkujen, suodattimien tai merkkijonojen muuttaminen ei voi muuttaa välimuistitettua dataa eikä dokumenttia
Valmistuneet tilannevedokset säilytetään rajatussa välimuistissa, jonka PageObjectSnapshotCacheCapacity kuvaa ja jota mitataan CacheBudgetBytes-budjettia vasten, ja PageComplexity hyödyntää tätä välimuistia objektityypeille, polkumäärille, kuvapikseleille ja läpinäkyvyydelle
Kutsuminen ilman aktiivista dokumenttia nostaa EPdfError-poikkeuksen, ja PageCount-rajojen ulkopuolinen PageNumber nostaa EPdfError-poikkeuksen viestillä Incorrect page number
Käytä ReadPageObjectsSnapshot-metodia mukautetuilla tallennusbudjeteilla tai ohittaaksesi välimuistin tarkoituksella
Snapshot := Pdf.PageObjectsSnapshot[PageNumber];
for I := 0 to High(Snapshot.Objects) do
if Snapshot.Objects[I].ObjectType = otImage then
LogImageObject(I);