property ImageCount: Integer; // read only
ImageCount는 PageNumber로 선택한 페이지에서 형식이 FPDF_PAGEOBJ_IMAGE인
모든 페이지 객체를 열거합니다. PDF 용어로 이들은 페이지 콘텐츠 스트림에서 참조되는 Image
XObject입니다(PDF 1.7 사양 8.9절). 벡터 콘텐츠, form XObject, 음영, 텍스트 글리프는
의도적으로 제외되므로 사람이 페이지상의 “그림”이라고 부르는 것과 일치합니다
이 속성은 Active가 True이고 유효한 PageNumber가 있어야
합니다. 문서가 로드되지 않았을 때 값은 0입니다. ImageCount는 페이지별 수량입니다.
문서 전체 합계를 구하려면 모든 페이지를 순회하며 누적하세요. ImageCount는 BitmapCount와
동일하며 Image[Index] 인덱서와 자연스럽게 짝을 이루도록 제공됩니다. 이 인덱서는 디코딩된
TPdfImage 레코드(Width, Height, 원시 픽셀 바이트)를 반환합니다
일반적인 루프 패턴은 for I := 0 to Pdf.ImageCount - 1 do이며,
Pdf.Image[I]가 디코딩된 픽셀을 제공합니다. 비용은 이미지 데이터 크기에 비례합니다.
PDFium이 요청 시 JPEG / JPEG2000 / CCITTFax / Flate 스트림을 디코딩하기 때문입니다. 페이지당 두 번
이상 필요하면 결과를 캐시하세요
BI/ID/EI)는
PDFium이 XObject 이미지와 함께 보고하므로 포함됩니다ImageCount = 0으로 빠르게
“텍스트 전용 페이지”인지 확인하세요
// 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;