PDFium Component Docs

BitmapCount Właściwość

Ten wpis API zachowuje identyfikatory, sygnatury, bloki kodu i terminy PDF w oryginalnej postaci.
Komponent: TPdf  ·  Moduł: PDFium
Liczba obiektów obrazu na aktywnej stronie, dostępnych jako VCL TBitmap

Składnia

property BitmapCount: Integer; // read only

Opis

BitmapCount zwraca liczbę obiektów obrazu na aktualnie aktywnej stronie (sekcja 8.9 specyfikacji PDF 1.7). Współpracuje z indekserem Bitmap[Index], który dekoduje bazowy strumień obrazu do w pełni wyrenderowanego Delphi TBitmap (32-bit RGBA, gotowy do Canvas.Draw, przekazania do schowka albo zapisania do PNG/BMP)

Wartość wynosi 0, gdy Active ma wartość False, gdy PageNumber jest nieprawidłowy albo gdy strona nie zawiera obiektów obrazu. Liczba jest identyczna jak ImageCount; te dwie właściwości różnią się tylko typem zwracanym przez ich indeksery — Image[Index] zwraca surowy zdekodowany bufor pikseli w rekordzie TPdfImage, a Bitmap[Index] opakowuje ten bufor w zarządzany przez wywołującego VCL TBitmap

Typowa pętla to for I := 0 to Pdf.BitmapCount - 1 do a następnie Pdf.Bitmap[I]. Każde odwołanie alokuje nowy TBitmap i kopiuje piksele — nie wywołuj tego w ciasnych pętlach renderujących; buforuj bitmapę przy ponownym użyciu. Zwolnij każdą zwróconą bitmapę po zakończeniu, aby szybko zwolnić zasoby GDI

Uwagi

Przykład

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;

Zobacz też

Bitmap, ImageCount, Image, ObjectBitmap