property ImageCount: Integer; // read only
ImageCount wylicza każdy obiekt strony, którego typem jest FPDF_PAGEOBJ_IMAGE, na stronie wybranej przez PageNumber W terminologii PDF są to XObjecty obrazu odwoływane ze strumienia zawartości strony (sekcja 8.9 specyfikacji PDF 1.7) Zawartość wektorowa, XObjecty formularzy, cieniowania i glify tekstowe są celowo wyłączone, więc wartość odpowiada temu, co człowiek nazwałby „obrazem” na stronie
Właściwość wymaga, aby Active miało wartość True, oraz prawidłowego PageNumber Gdy dokument nie jest załadowany, wartość wynosi 0 ImageCount jest wielkością liczoną per strona; przeiteruj przez każdą stronę i zsumuj wynik, aby uzyskać łączną liczbę dla całego dokumentu ImageCount jest równoważne BitmapCount i stanowi naturalne uzupełnienie indeksatora Image[Index], który zwraca zdekodowany rekord TPdfImage (Width, Height, surowe bajty pikseli)
Typowy wzorzec pętli to for I := 0 to Pdf.ImageCount - 1 do, a Pdf.Image[I] udostępnia zdekodowane piksele Koszt rośnie wraz z rozmiarem danych obrazu, ponieważ PDFium dekoduje strumienie JPEG / JPEG2000 / CCITTFax / Flate na żądanie; zapamiętaj wynik w pamięci podręcznej, jeśli potrzebujesz go więcej niż raz na stronę
BI/ID/EI) są raportowane przez PDFium razem z obrazami XObject, więc są uwzględnianeImageCount odzwierciedla umieszczenia, a nie unikalne zasobyImageCount = 0 jako szybkiego sprawdzenia „strona tylko z tekstem” przed uruchomieniem kosztownego OCR albo generowania miniatury
// 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;