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 페이지에 이미지를 배치합니다. 두 개의 오버로드가 있으며, 하나는 파일 경로에서 이미지를 직접 로드하고 다른 하나는 미리 만든 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;