procedure AddImage(const FileName: string; X, Y, Width, Height: Double);
| FileName | string. Caminho completo para o arquivo de imagem. Qualquer formato registrado com o sistema gráfico VCL/LCL (BMP, PNG, JPG, etc.) é aceito. |
procedure AddImage(Bitmap: TBitmap; X, Y, Width, Height: Double);
| Bitmap | TBitmap. Um bitmap pré-carregado com PixelFormat = pf32bit. Não deve ser nil; caso contrário, lança EPdfError. |
AddImage posiciona uma imagem na página PDF atual na posição e no tamanho informados. Duas sobrecargas estão disponíveis: uma carrega a imagem diretamente de um caminho de arquivo e a outra aceita um objeto TBitmap pré-construído.
A sobrecarga baseada em arquivo usa TPicture.LoadFromFile internamente, portanto qualquer formato de imagem registrado com o sistema gráfico VCL ou LCL é suportado — incluindo BMP, PNG (por meio de Vcl.Imaging.PngImage ou do equivalente LCL), JPEG e outros. Basta garantir que as unidades relevantes estejam incluídas na cláusula uses do seu projeto antes de chamar este método.
A sobrecarga de bitmap aceita um TBitmap com PixelFormat = pf32bit. Isso é útil quando o bitmap já está na memória (por exemplo, de uma etapa de renderização offscreen) e evita uma ida e volta pelo disco ou pelo TPicture. Passar um bitmap nil lança uma exceção EPdfError.
Os parâmetros X e Y especificam o canto inferior esquerdo do retângulo de posicionamento da imagem em unidades do usuário do PDF (origem no canto inferior esquerdo da página, Y cresce para cima). Width e Height controlam o tamanho renderizado na página; a imagem de origem é escalada para caber nessas dimensões, independentemente de sua resolução em pixels.
// Place a PNG file at (72, 600), rendered 200 x 150 pt on the page
Pdf1.NewPage(595, 842);
Pdf1.AddImage('C:\Images\logo.png', 72, 600, 200, 150);
// Add a pre-built 32-bit bitmap
var
Bmp: TBitmap;
begin
Bmp := TBitmap.Create;
try
Bmp.PixelFormat := pf32bit;
Bmp.LoadFromFile('C:\Images\photo.bmp');
Pdf1.AddImage(Bmp, 72, 400, 300, 200);
finally
Bmp.Free;
end;
end;