property CharacterCount: Integer; // read only
CharacterCount returnerar antalet tecken som PDFium identifierar på den aktiva
sidans FPDF_TEXTPAGE — samma indexering som driver
Character[Index], CharacterRectangle[Index],
CharacterOrigin[Index] och sök-/markeringslagret. Antalet avser
glyfer efter ToUnicode CMap-upplösning, så varje post motsvarar
en Unicode-kodpunkt som avkodats av PDFium, inte en glyf i PDF:ens typsnittsprogram
Värdet är 0 när Active är False, när
sidan saknar textinnehåll (rena bild-/vektorsidor) eller när textinnehållet är
ritat med typsnitt som saknar en ToUnicode CMap och ingen reservheuristik kunde
avkoda dem. PDFium inkluderar också “genererade” blankstegstecken som den
syntetiserar för att modellera radbrytningar och ordgränser — kontrollera
CharacterGenerated[Index] för att skilja riktiga glyfer från syntetiska
Den typiska loopen är for I := 0 to Pdf.CharacterCount - 1 do, där
Pdf.Character[I] returnerar en WideChar. Att konkatenera dessa
till en enda sträng ger sidans textinnehåll i läsordning.
Själva CharacterCount är O(1) efter att sidan har tolkats; de indexerade åtkomstfunktionerna gör
arbetet per tecken
CharacterMapError[Index] för att upptäcka glyfer som PDFium inte
kunde mappa tillbaka till Unicode; de kräver typiskt OCR eller inspektion av typsnittsprogrammet
var S: string;
var I: Integer;
SetLength(S, Pdf1.CharacterCount);
for I := 1 to Length(S) do
S[I] := Pdf1.Character[I - 1];
Memo1.Lines.Add(S);