property ImageCount: Integer; // nur lesbar
ImageCount zählt jedes Seitenobjekt vom Typ FPDF_PAGEOBJ_IMAGE auf
der durch PageNumber ausgewählten Seite In PDF-Begriffen sind das die
Image-XObjects, die aus dem Inhaltsstrom der Seite referenziert werden
(PDF 1.7 spec section 8.9) Vektorinhalte, Form-XObjects, Schattierungen und
Text-Glyphen werden absichtlich ausgeschlossen, sodass der Wert dem entspricht, was
ein Mensch als “Bild” auf der Seite bezeichnen würde
Die Eigenschaft erfordert, dass Active True ist und
PageNumber gültig ist Wenn das Dokument nicht geladen ist, ist der Wert
0 ImageCount ist eine seitenbezogene Größe; iterieren Sie über jede
Seite und addieren Sie die Anzahl, um einen dokumentweiten Gesamtwert zu erhalten
ImageCount ist äquivalent zu BitmapCount und ergänzt natürlich den
Image[Index]-Indexer, der einen dekodierten TPdfImage-Datensatz
zurückgibt (Width, Height, rohe Pixeldaten)
Das typische Schleifenmuster lautet for I := 0 to Pdf.ImageCount - 1 do,
wobei Pdf.Image[I] die dekodierten Pixel liefert Die Kosten skalieren mit
der Größe der Bilddaten, weil PDFium JPEG- / JPEG2000- / CCITTFax- / Flate-Streams
bei Bedarf dekodiert; cachen Sie das Ergebnis, wenn Sie es pro Seite mehr als einmal
benötigen
BI/ID/EI), werden von PDFium gemeinsam
mit XObject-Bildern gemeldet und sind daher enthaltenImageCount = 0 als schnelle Prüfung auf eine
“nur-Text-Seite” bevor Sie teure OCR oder Miniaturbilderzeugung
starten
// Jedes Bild auf der aktuellen Seite auf die Festplatte speichern
var I: Integer;
var Img: TPdfImage;
begin
Pdf1.Active := True;
for I := 0 to Pdf1.ImageCount - 1 do
begin
Img := Pdf1.Image[I];
TFile.WriteAllBytes(Format('page%d_img%d.bin', [Pdf1.PageNumber, I]), Img.Data);
end;
end;