procedure AddImage(const FileName: string; X, Y, Width, Height: Double);
| FileName | سلسلة. المسار الكامل لملف الصورة. تُقبل أي صيغة مسجلة في نظام رسوميات 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 بمشروعك قبل استدعاء هذه الطريقة.
يقبل تحميل الصورة النقطية كائن TBitmap مع PixelFormat = pf32bit. يفيد هذا عندما تكون الصورة النقطية في الذاكرة مسبقًا (مثلًا من خطوة تصيير خارج الشاشة) ويتجنب رحلة ذهاب وإياب عبر القرص أو 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;