procedure AddPicture(Picture: TPicture; X, Y: Double);
| Picture | TPicture。要嵌入的源图片对象。Picture 内的图形会被转换并以原始尺寸放置在页面上(根据以像素计的 Picture.Width / Picture.Height 推导,映射到 PDF 用户单位) |
procedure AddPicture(Picture: TPicture; X, Y, Width, Height: Double);
| Picture | TPicture。要嵌入的源图片对象。图形会缩放以适配页面上指定的 Width × Height 矩形 |
AddPicture 将 TPicture 对象中持有的图形嵌入到当前 PDF 页面。提供两个重载:三坐标形式以原始尺寸放置图片,而五坐标形式将其缩放到一个显式的 Width × Height 矩形
TPicture 是任何已注册图形格式的标准 VCL/LCL 容器。因为它不是特定于格式的,你可以传入位图、PNG 图像、JPEG 图像或任何已加载到 TPicture 实例中的图形。要直接放置普通 TBitmap,请考虑使用 AddImage。对于原始 JPEG 流数据,使用 AddJpegImage
X 和 Y 参数以 PDF 用户单位定义图像的左下角(原点在页面左下角,Y 向上递增)。当省略 Width 和 Height 时,放置尺寸按 72 DPI 从图片的像素尺寸推导
var
Pic: TPicture;
begin
Pic := TPicture.Create;
try
Pic.LoadFromFile('C:\Images\chart.png');
// 以原始尺寸放置,左下角位于 (72, 500)
Pdf1.AddPicture(Pic, 72, 500);
// 或缩放到显式的 300 x 200 pt 矩形
Pdf1.AddPicture(Pic, 72, 200, 300, 200);
finally
Pic.Free;
end;
end;