property TextPageSnapshot[PageNumber: Integer]: TPdfTextPageSnapshot; // read only
type TPdfTextPageSnapshot = record
PageNumber: Integer;
Width: Double;
Height: Double;
Status: TPdfTextSnapshotStatus;
Text: WString;
Characters: TPdfTextCharacterSnapshots;
TextObjects: TPdfTextObjectSnapshots;
end;
| PageNumber | Integer. Indeks stranice unutar učitanog dokumenta s bazom jedan |
| Status | TPdfTextSnapshotStatus. Zastavica dovršenosti, brojači posjećenosti, nepreslikanih i neuspjelih vrijednosti te dosegnute zastavice proračuna |
| Text | WString. Izdvojeni tekst stranice u izvornom redoslijedu PDFiuma |
| Characters | Zapisi po znaku s točkom koda, indeksima, granicama, ishodištem, kutom, veličinom fonta, bojama i podacima matrice |
| TextObjects | Zapisi po tekstualnom objektu s rasponima znakova, nazivom fonta, zastavicama, debljinom i načinom renderiranja |
Prvi pristup stranici snima snimku s proračunima TPdfTextSnapshotOptions.Default, milijun znakova, sto tisuća tekstualnih objekata i proračunom naziva fonta od 16 MiB. Aktivna stranica čita se kroz svoje učitane rukovatelje, a svaka druga stranica privremeno se učita i zatvori bez promjene PageNumber i bez okidanja OnPageChange
Svaki pristup vraća duboku kopiju, pa izmjena niza ili polja u vlasništvu pozivatelja ne može promijeniti predmemoriranu snimku ni PDF
Dovršene snimke zadržavaju se u ograničenoj predmemoriji opisanoj u TextSnapshotCacheCapacity i mjere se naspram CacheBudgetBytes, a GetStructuredText i GetTextInReadingOrder s fizičkim rasporedom ponovno koriste istu snimku
Poziv bez aktivnog dokumenta podiže EPdfError, a PageNumber izvan raspona od jedan do PageCount podiže EPdfError s porukom Incorrect page number
Koristite ReadTextPageSnapshot za prilagođene proračune snimanja ili za namjerno zaobilaženje predmemorije
Snapshot := Pdf.TextPageSnapshot[PageNumber];
if Snapshot.Status.Completed then
LogCharacterCount(Length(Snapshot.Characters));