PDFium Component Docs

Bitmap Właściwość

Component: TPdf  ·  Unit: PDFium
Zwraca świeżo zdekodowany VCL TBitmap zawierający dane rastrowe wskazanego obiektu obrazu na bieżącej stronie. Bitmapa jest alokowana od nowa przy każdym wywołaniu; wywołujący jest jej właścicielem i odpowiada za wywołanie Free

Syntax

property Bitmap[Index: Integer]: TBitmap; // read only

IndexIndeks obrazu liczony od zera na bieżącej stronie, w zakresie od 0 do BitmapCount - 1

Description

Bitmap zwraca TBitmap zawierający dane pikselowe n-tego obrazu rastrowego na bieżącej stronie. PDFium dekoduje leżący u podstaw strumień (JPEG, JPEG2000, CCITT, JBIG2 lub dane pikselowe FlateDecode), a PDFium Delphi Component konwertuje wynik na TBitmap VCL w zapisanej rozdzielczości obrazu, z kanałem alfa zachowanym jako powierzchnia 32-bitowa ARGB, gdy źródło dostarcza miękką maskę

Każde wywołanie alokuje nową mapę bitową; właściwość nie buforuje. Dzięki temu właściwość można bezpiecznie wywoływać z wątków roboczych, ale oznacza to również, że wywołujący muszą zawsze zwolnić zwrócony obiekt, zwykle wewnątrz bloku try .. finally

Gdy potrzebujesz także macierzy transformacji obrazu na stronie i prostokąta otaczającego, użyj zamiast tego Image[Index] — zwraca rekord łączący tę samą mapę bitową TBitmap z metadanymi pozycji. Niezależny od kształtu odpowiednik ObjectBitmap[ObjectIndex] indeksuje pełną tablicę obiektów strony (mieszany tekst, ścieżki, obrazy) i zwraca tę samą mapę bitową, jeśli wskazany obiekt akurat jest obrazem

Remarks

Example

// Export every image on the current page as numbered BMP files
var
  I: Integer;
  Bmp: TBitmap;
begin
  for I := 0 to Pdf.BitmapCount - 1 do
  begin
    Bmp := Pdf.Bitmap[I];
    try
      Bmp.SaveToFile(Format('page_%d_img_%d.bmp', [Pdf.PageNumber, I]));
    finally
      Bmp.Free;
    end;
  end;
end;

See Also

BitmapCount, Image, ImageCount, ObjectBitmap