PDFium Component Docs

BitmapCount 속성

이 API 항목은 식별자, 시그니처, 코드 블록, PDF 용어를 원래 형태로 유지합니다.
컴포넌트: TPdf  ·  유닛: PDFium
활성 page의 image page object 수이며 VCL TBitmap으로 접근할 수 있습니다

구문

property BitmapCount: Integer; // read only

설명

BitmapCount는 현재 활성 page의 image page object 수를 반환합니다(PDF 1.7 spec 8.9절). 이는 Bitmap[Index] 인덱서와 짝을 이루며, 그 인덱서는 기반 image stream을 완전히 렌더링된 Delphi TBitmap(32-bit RGBA, Canvas.Draw, clipboard transfer, PNG/BMP 저장용)에 디코딩합니다

ActiveFalse이거나 PageNumber가 유효하지 않거나 page에 image object가 없으면 값은 0입니다. count는 ImageCount와 같고, 두 속성의 차이는 인덱서 반환 형식뿐입니다. Image[Index]는 디코딩된 raw pixel buffer를 TPdfImage record로 돌려주고, Bitmap[Index]는 그 buffer를 호출자가 소유하는 관리형 VCL TBitmap으로 감쌉니다

일반적인 루프는 for I := 0 to Pdf.BitmapCount - 1 do 다음에 Pdf.Bitmap[I]를 호출하는 형태입니다. 각 접근은 새 TBitmap을 할당하고 pixel을 복사하므로, 촘촘한 rendering loop에서는 호출하지 말고 재사용할 때는 bitmap을 캐시하세요. 끝났으면 반환된 bitmap을 모두 해제해 GDI resource를 즉시 반환하세요

비고

예제

var I: Integer;
var Bmp: TBitmap;
for I := 0 to Pdf1.BitmapCount - 1 do
begin
  Bmp := Pdf1.Bitmap[I];
  try
    Bmp.SaveToFile(Format('image_%d.bmp', [I]));
  finally
    Bmp.Free;
  end;
end;

참고 항목

Bitmap, ImageCount, Image, ObjectBitmap