CompressContent

خصائص المستند

الوصف

يضغط كل تدفق محتوى صفحة في المستند المحدد حاليًا. وتُستخدم خوارزمية Flate‏ (zlib) فتحمل التدفقات الناتجة مرشح /FlateDecode عند حفظ المستند. وتُترك التدفقات المضغوطة سلفًا دون مساس

على Windows يُستخدم واجهة zlib-ng المرفقة في وضع متوافق مع zlib. وتربط بنيات Win64 مجموعة كائنات zlib-ng‏ SIMD لوقت التشغيل bcc64x؛ وتحتفظ Win32 بمجموعة الكائنات العامة الموجهة للتوافق. ولن تحتاج شيفرات Delphi وActiveX وDLL وC++Builder القائمة إلى أي تغييرات مصدر

الصيغة

Delphi

Function TPDFlib.CompressContent: Integer;

ActiveX

Function PDFlib::CompressContent() As Long

DLL

int DLCompressContent(int InstanceID);

قيم الإرجاع

0لا يوجد مستند مفتوح أو فشل الضغط
1ضُغطت تدفقات محتوى الصفحة بنجاح

ملاحظات

هذه عملية على مستوى المستند. استخدم CompressPage إذا كنت تحتاج فقط ضغط الصفحة المحددة حاليًا. وللتحكم فيما إذا كانت الصور والخطوط المضافة حديثًا تُخزن مضغوطة استخدم CompressImages وCompressFonts على التوالي

شغّل هذا مرة واحدة قبل SaveToFile عند تقليص مستند بُني حديثًا؛ وعادة تكون التوفيرات كبيرة على الصفحات الغنية بالنص وضئيلة على الصفحات المكونة غالبًا من بيانات صور مضغوطة مسبقًا

مثال

// Build a document, compress everything, then save
PDF.NewDocument;
PDF.AddStandardFont('Helvetica');
PDF.AddPage;
PDF.PrintText(50, 750, 'Compressed document');

PDF.CompressContent;                   // page streams -> /FlateDecode
PDF.CompressImages(1);                 // also flate-encode any subsequent images
PDF.SaveToFile('compressed.pdf');

انظر أيضا

CompressPage, CompressImages, CompressFonts, SaveToFile