PDFium Delphi Component Docs

ImageCount Eigenschaft

Komponente: TPdf  ·  Unit: PDFium
Anzahl der Rasterbild-XObjects auf der aktuell aktiven Seite

Syntax

property ImageCount: Integer; // read only

Description

ImageCount zählt jedes Seitenobjekt vom Typ FPDF_PAGEOBJ_IMAGE auf der durch PageNumber gewählten Seite. In PDF-Terminologie sind das die Image- XObjects, die aus dem Content Stream der Seite referenziert werden (PDF 1.7 spec section 8.9) Vektorinhalte, Form-XObjects, Shadings und Textglyphen sind bewusst ausgeschlossen, damit der Wert dem entspricht, was ein menschlicher Leser ein “Bild” auf der Seite nennen würde

Die Eigenschaft verlangt, dass Active True ist, und eine gültige PageNumber. Ist kein Dokument geladen, ist der Wert 0 ImageCount ist eine Größe je Seite; iterieren Sie über alle Seiten und akkumulieren Sie die Zählung für eine dokumentweite Summe. ImageCount ist äquivalent zu BitmapCount und existiert, um natürlich mit dem Image[Index]-Indexer zusammenzupassen, der einen dekodierten TPdfImage-Record liefert (Width, Height, rohe Pixel-Bytes)

Das typische Schleifenmuster ist for I := 0 to Pdf.ImageCount - 1 do, wobei Pdf.Image[I] die dekodierten Pixel liefert. Die Kosten skalieren mit der Bildgröße, weil PDFium JPEG-/JPEG2000-/CCITTFax-/Flate-Streams bei Bedarf dekodiert; cachen Sie das Ergebnis, wenn Sie es mehr als einmal je Seite brauchen

Remarks

Example

// Save every image on the current page to disk.
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;

See Also

Image, BitmapCount, Bitmap, ObjectCount