طريقة THotPDF.ExtractLoadedImageToStream
تكتب كائن صورة XObject محمّلًا واحدًا مباشرة إلى وجهة يملكها المستدعي دون إنشاء مصفوفة بايتات بحجم كامل
الإعلان
function ExtractLoadedImageToStream(ImageIndex: Integer;
Destination: TStream; Mode: THPDFLoadedImageStreamMode= lismEncoded): boolean;
الوحدة
HPDFDoc
المعاملات
| الاسم | الغرض |
|---|---|
ImageIndex | فهرس صفري من GetLoadedImageCount |
Destination | تدفق يملكه المستدعي يستقبل البايتات في موضعها الحالي |
Mode | ينسخ lismEncoded حمولة الصورة الأصلية، بينما ينفّذ lismDecoded سلسلة مرشحات تدفق PDF العامة |
القيمة المعادة
تُعيد True عند اكتمال الصورة المحددة ووضع الاستخراج بنجاح
ملاحظات الاستخدام
- يعمل
lismEncodedللحمولات الأصلية DCT وJPX وJBIG2 وCCITT وFlate وLZW وغير المُرشَّحة ويستعيد موضع المصدر - يدعم
lismDecodedعائلات Flate وLZW وASCII85 وASCIIHex وRunLength العامة عبر خط أنابيب فك الترميز المحدود - تبقى مرشحات الصور الأصلية الطرفية مثل DCT أو JPX مرمَّزة ويجب أن تستخدم
lismEncoded - يستهلك الاستخراج المفكوك ميزانيات فك الترميز لكل سلسلة وعلى مستوى المستند
- قد تترك الكتابة المفكوكة الفاشلة بايتات جزئية في الوجهة، لذا استخدم تدفقًا مؤقتًا عندما يلزم إخراج ذري
مثال
Output := TFileStream.Create('image.bin', fmCreate);
try
if not PDF.ExtractLoadedImageToStream(0, Output, lismEncoded) then
raise Exception.Create('Image extraction failed');
finally
Output.Free;
end;