property Bitmap[Index: Integer]: TBitmap; // read only
| Index | Index obrázku so základom 0 na aktuálnej strane, v rozsahu 0 až BitmapCount - 1. |
Bitmap vráti TBitmap obsahujúce pixelové dáta
n-tého rastrového obrázku na aktuálnej strane. PDFium dekóduje podkladový stream
(JPEG, JPEG2000, CCITT, JBIG2 alebo pixelové dáta FlateDecode) a PDFiumPas konvertuje
výsledok na VCL TBitmap v uloženom rozlíšení obrázku, pričom alfa
sa zachová ako 32-bitová ARGB plocha tam, kde zdroj poskytuje mäkkú masku.
Každé volanie alokuje novú bitmapu; vlastnosť neukladá do vyrovnávacej pamäte. To robí
vlastnosť bezpečnou na volanie z pracovných vlákien, ale znamená to, že volajúci musí vždy uvoľniť
vrátený objekt, zvyčajne vnútri bloku try .. finally.
Keď potrebujete aj transformáčnu maticu obrázku na strane a ohraničujúci obdĺžnik,
použite namiesto toho Image[Index] — vráti záznam, ktorý
zabalí rovnaký TBitmap s pozičnými metadátami. Súrodenec nešpecifický pre tvar
ObjectBitmap[ObjectIndex] indexuje do
úplného poľa objektov strany (zmiešaný text, cesty, obrázky) a vráti rovnakú bitmapu, ak
cieleným objektom sa náhodou stane obrázok.
nil, keď je Index mimo rozsahu alebo keď dokument nie je aktívny.
// 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;