PDFium Component Docs

TextPageSnapshot-egenskap

Component: TPdf  ·  Unit: PDFium
Returnerer det cachete, avgrensede tekstsnapshotet til én side med sidetekst, tegnrecords og tekstobjektrecords

Syntax

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;

PageNumberInteger. Énbasert sideindeks i det lastede dokumentet
StatusTPdfTextSnapshotStatus. Fullføringsflagg, antall besøkte, unmapped- og feiltellere og budsjettflaggene som ble nådd
TextWString. Uttrekt sidetekst i native PDFium-rekkefølge
CharactersPer-tegn-records med kodepunkt, indekser, grenser, origo, vinkel, skriftstørrelse, farger og matrisefakta
TextObjectsPer-tekstobjekt-records med tegnområder, fontnavn, flagg, vekt og rendermodus

Description

Første tilgang for en side fanger snapshotet med TPdfTextSnapshotOptions.Default-budsjetter, én million tegn, hundre tusen tekstobjekter og et fontnavnbudsjett på 16 MiB. Den aktive siden leses gjennom sine lastede handle, og enhver annen side lastes og lukkes forbigående uten å endre PageNumber eller utløse OnPageChange

Hver tilgang returnerer en dyp kopi, så å endre en streng eller array som eies av kalleren, kan ikke modifisere det cachete snapshotet eller PDF-en

Fullførte snapshots beholds i den avgrensede cachen som TextSnapshotCacheCapacity beskriver og måles mot CacheBudgetBytes, og GetStructuredText pluss GetTextInReadingOrder med fysisk layout gjenbruker det samme snapshotet

Remarks

Kall uten et aktivt dokument utløser EPdfError, og en PageNumber utenfor én til PageCount utløser EPdfError med meldingen Incorrect page number

Bruk ReadTextPageSnapshot for egne fangstbudsjetter eller for å bevisst omgå cachen

Example

Snapshot := Pdf.TextPageSnapshot[PageNumber];
if Snapshot.Status.Completed then
  LogCharacterCount(Length(Snapshot.Characters));

See Also

TextSnapshotCacheCapacity, TextSnapshotCacheCount, TextPageSnapshots, GetStructuredText, TPdfView.TextPage