procedure AddImage(const FileName: string; X, Y, Width, Height: Double);
| FileName | string。画像ファイルへの完全パス。VCL/LCL グラフィックシステムに登録された任意の形式 (BMP、PNG、JPG など) を受け付けます |
procedure AddImage(Bitmap: TBitmap; X, Y, Width, Height: Double);
| Bitmap | TBitmap。PixelFormat = pf32bit の事前読み込み済みビットマップ。nil は許可されず、渡すと EPdfError が発生します |
AddImage は、指定された位置とサイズで現在の PDF ページに画像を配置します。2 つのオーバーロードがあり、片方はファイルパスから直接画像を読み込み、もう片方は構築済みの TBitmap オブジェクトを受け取ります
ファイルベースのオーバーロードは内部で TPicture.LoadFromFile を使用するため、VCL または LCL のグラフィックシステムに登録された任意の画像形式をサポートします。これには BMP、PNG (Vcl.Imaging.PngImage または LCL の同等ユニット経由)、JPEG などが含まれます。このメソッドを呼び出す前に、必要なユニットをプロジェクトの uses 句に含めてください
ビットマップオーバーロードは PixelFormat = pf32bit の TBitmap を受け取ります。これは、ビットマップが既にメモリ上にある場合 (オフスクリーンレンダリングの結果など) に便利で、ディスクや TPicture を経由する往復を避けられます。nil のビットマップを渡すと EPdfError 例外が発生します
X と Y は、画像を配置する矩形の左下コーナーを PDF ユーザー単位で指定します (原点はページ左下、Y は上向きに増加します)。Width と Height がページ上の描画サイズを決定し、ソース画像はピクセル解像度に関係なくこの寸法に合わせて拡大縮小されます
// 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;