property BitmapCount: Integer; // read only
BitmapCount returnerar antalet bildsidobjekt på den aktuellt aktiva sidan
(PDF 1.7-specifikationens avsnitt 8.9). Den paras med indexeraren Bitmap[Index],
som avkodar den underliggande bildströmmen till en fullständigt renderad Delphi-
TBitmap (32-bitars RGBA, redo för Canvas.Draw, urklipps-
överföring eller sparande till PNG/BMP)
Värdet är 0 när Active är False, när
PageNumber är ogiltigt eller när sidan inte innehåller några bildobjekt. Antalet
är identiskt med ImageCount; de två egenskaperna skiljer bara i returtypen
för sina indexerare — Image[Index] lämnar tillbaka en
TPdfImage-record vars Data innehåller den avkodade pixelbufferten
och vars RawData bär den fortfarande kodade bildströmmen, medan
Bitmap[Index] slår in den bufferten i en hanterad VCL TBitmap
som ägs av anroparen
Den typiska loopen är for I := 0 to Pdf.BitmapCount - 1 do följt av
Pdf.Bitmap[I]. Varje åtkomst allokerar en ny TBitmap och kopierar
pixlar — anropa den inte i täta renderingsloopar; cacha bitmapen när den återanvänds
Frigör varje returnerad bitmap när du är klar för att snabbt släppa GDI-resurserna
TBitmap:ens alfakanal av PDFiumImageCount / Image[Index] allokeringsoverheaden
för GDI-bitmapen
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;