حجم الملف والضغط

لماذا لا يصغر بعض ملفات PDF إطلاقاً

لماذا لا يصغر ملف PDF لديّ إطلاقاً؟

الإجابة المختصرة

عادةً لأنه لم يبقَ ما يُضغط: فالملف مبني بكفاءة أصلاً، أو أن حجمه آتٍ من خطوط مضمّنة أو رسوم متجهة كثيفة أو صيغ صور لا يمكن إعادة ضغطها داخل متصفح. فضغط الصور لا يفيد إلا ملفاً تكون بايتاته صوراً فوتوغرافية.

الجواب المختصر

لكل أداة ضغط الحد نفسه: فهي لا تستطيع إزالة إلا التكرار الذي ما زال موجوداً. وحين يرفض ملف PDF أن يصغر، فالسبب شبه أبداً ليس إخفاق الأداة. بل إن الملف لا هامش فيه، أو أن ثقله يقبع في جزء من المستند لا يصل إليه ضغط الصور.

وهناك أربعة أسباب شائعة تستدعي استجابات مختلفة. فقد يكون الملف قريباً من قاعه أصلاً. وقد يكون حجمه خطوطاً مضمّنة. وقد يكون رسوماً متجهة. وقد تكون صوره بصيغ لا يمكن فكّ ترميزها وإعادة ترميزها في متصفح. اعرف أولاً أيّها لديك — فأداة /pdf-page-count تبلّغ بعدد الصفحات وأحجامها وبوجود طبقة نص، وهذا يكفي عادةً للتمييز.

الملف مبني بكفاءة أصلاً

وهذه أشيع الحالات وأقلّها إرضاءً. فملف PDF المصدَّر مرة واحدة من تطبيق حديث يكون عادةً قريباً أصلاً من أصغر حجم ممكن له، لأن الضغط العام قد جرى سلفاً.

123

أين تكمن البايتات فعلاً

  1. الصور. في كل ملف PDF كبير تقريباً هذا هو الملف كله تقريباً.
  2. الخطوط المضمَّنة — بضع مئات من الكيلوبايتات، والقيمة نفسها سواء كان المستند 5 صفحات أو 500.
  3. النص نفسه، والبنية التي تربطه. خطأ تقريب عادةً.

فتدفقات محتوى الصفحات — أي التعليمات التي تصف موضع النص والخطوط المستخدمة وكيفية رسم الخطوط — تُخزَّن بمرشّح Flate، أي خوارزمية DEFLATE في المعيار RFC 1951، وهي نفسها التي داخل ZIP وPNG. وقد طبّقها برنامج التصدير حين كتب الملف. وتشغيل DEFLATE على بيانات مضغوطة بـDEFLATE أصلاً لا يستعيد شيئاً؛ فالناتج المضغوط يبدو ضجيجاً في نظر الضاغط، وهذا بالضبط سبب كونه مضغوطاً.

ولذلك فإن مستنداً نصياً من 40 صفحة بلا صور لا هامش معتبراً فيه. والتحسين البنيوي — إعادة حزم الكائنات في تدفقات كائنات، وإسقاط الكائنات التي تيتّمت بتعديلات سابقة، وتجريد البيانات الوصفية — يكسب نسباً من خانة واحدة وأحياناً بالكاد ذلك. وهذا ليس قيداً في أداة بعينها؛ بل هو حال الملف.

وهناك استثناء واحد يستحق المعرفة. فملف PDF فُتح وحُرِّر وأُعيد حفظه مرات كثيرة عبر عدة تطبيقات قد يحمل كثيراً من الفضلات غير المُشار إليها من نسخه السابقة، وإعادة كتابته كما ينبغي تكسب أكثر بكثير. فإن بدا ملف كبيراً بشكل غير معقول قياساً بما يحويه وكان له تاريخ تحرير طويل، فهذا هو التفسير المرجّح.

الخطوط المضمّنة

يُفترض أن يبدو ملف PDF متطابقاً في كل مكان. ويُوفى بهذا الوعد بوضع الخطوط داخل الملف، حتى لا يعتمد المستند على ما يصادف أن يكون مثبّتاً على جهاز القارئ. وهذا أحد أسباب وجود الصيغة أصلاً، وهو يكلّف بايتات.

وكم يكلّف؟ يعتمد ذلك على الخط. فـالمجموعة الجزئية — أي الرموز التي يستخدمها المستند فعلاً — من خط نص لاتيني تبلغ عادةً عشرات الكيلوبايتات ولا تستحق القلق. أما الخط الكامل غير المجزّأ فأكبر. وخط CJK، الذي يغطي الصينية أو اليابانية أو الكورية، قد يبلغ عدة ميغابايتات وحده، لأنه يحمل آلاف الرموز. وضمّن وزنين منه فيكون لديك ملف PDF بعدة ميغابايتات يحتوي على صفحة نص.

وضعف التجزئة عدم كفاءة حقيقي وقابل للإصلاح، لكن الإصلاح هو إعادة التصدير من المستند المصدر مع تفعيل التجزئة — وهي مهمة التطبيق الذي أنشأ ملف PDF لا مهمة أداة ضغط.

وما ينبغي ألّا تفعله هو نزع الخطوط. فملف PDF الذي أُزيلت خطوطه يُرسم بخطوط بديلة على أي جهاز تنقصه الخطوط الأصلية: فتنزاح المقاييس، وتتحرك فواصل الأسطر، وينحرف التنسيق، وقد تختفي حروف تماماً. فيكفّ المستند بصمت عن كونه ذلك المستند. وiBuildPDF لا ينزع الخطوط المضمّنة في أي وضع، لهذا السبب بالضبط.

الرسوم المتجهة الكثيفة

الخريطة، وملف تصدير من برنامج تصميم هندسي، ومخطط طابق، ورسم بياني بعشرات الآلاف من النقاط: هذه تبدو صوراً وليست كذلك. إنها رسوم متجهة، فيحمل تدفق محتوى الصفحة عملية رسم منفصلة لكل خط ومنحنى وتعبئة ومسار قصّ في العمل الفني. وقد تحوي خريطة مفصّلة مئات الآلاف من العمليات. هذا هو الملف.

وليست هناك رافعة جودة صور تسحبها، لأنه لا توجد صورة. فلا شيء تُخفَّض دقته، ولا شيء يُعاد ترميزه، ولا إعداد جودة JPEG ينطبق. وإن شغّلت ضغط الصور على ملف كهذا فسيبلّغك بحق أنه لم يجد ما يعمل عليه، وسيخرج الناتج بحجم المُدخل نفسه. وهذا ليس إخفاقاً؛ بل هو النتيجة الصادقة. أما تدفق المحتوى فهو، كالعادة، مضغوط بمرشّح Flate أصلاً، فالرافعة العامة قد سُحبت هي الأخرى.

والخياران الحقيقيان هما تبسيط العمل الفني في التطبيق الذي أنتجه — مسارات أقل، وتفاصيل مخفية أقل، وإزالة الطبقات غير الضرورية — أو التخلي عن المتجهات والتحويل إلى نقاط، وهو ما يتناوله القسم أدناه. والعزاء أن الملفات المتجهة مستقلة عن الدقة: فخريطة بحجم 500 كيلوبايت تُطبع بشكل مثالي بأي مقاس، وهو ما لا تفعله صورة فوتوغرافية لخريطة بحجم 500 كيلوبايت.

صيغ صور لا يمكن إعادة ضغطها

أحياناً يكون الملف صوراً فعلاً ومع ذلك لا يمكن المساس بها، لأن المتصفح لا يستطيع فكّ ترميزها. فإعادة الضغط تعني فكّ ترميز البكسلات الأصلية أولاً، وليس لدى الأداة التي تعمل داخل المتصفح سوى فاكّات الترميز التي يأتي بها المتصفح.

  • JPEG 2000 (JPXDecode). وهي خليفة لصيغة JPEG قائمة على المويجات، تُستخدم في بعض مسارات الأرشفة والتصوير الطبي والمسح الاحترافي. والمتصفحات لا تدعمها بشكل موثوق — فلا يوجد فاكّ ترميز JPX أصيل يُعتمد عليه في المتناول، ولذلك لا سبيل آمناً للوصول إلى البكسلات.
  • JBIG2. وهي صيغة للصور الممسوحة ثنائية المستوى (أبيض وأسود خالصين). وهي تتعرّف على الأشكال المتكررة — كشكل الحرف نفسه وهو يظهر ألف مرة في الصفحة — وتخزّن كل شكل مرة واحدة. وهي فعّالة للغاية مع النص الممسوح ولا تستطيع صيغة JPEG تحسينها.
  • فاكس CCITT من المجموعتين 3 و4. وهي ترميزات الفاكس الكلاسيكية ثنائية المستوى، وما زالت تنتجها ماسحات المستندات والطابعات متعددة الوظائف. وكل بكسل فيها بت واحد، فالناتج عادةً أصغر أصلاً من أي ملف JPEG نستطيع صنعه من الصفحة نفسها؛ وتحويل مستند ممسوح ثنائي المستوى وحاد إلى JPEG سيجعله أكبر وأسوأ معاً، مع هالات رمادية حول كل حرف.

وتُتخطى أمور أخرى عمداً أيضاً: أقنعة الاستنسل وكل ما يُستخدم كـ/SMask أو /Mask، والصور الأصغر من نحو 100×100 بكسل، والعيّنات الخام بغير 8 بتات لكل مكوّن، وفضاءات الألوان التي لا يمكن تعيينها بشكل موثوق مثل Separation وDeviceN وLab، وصور JPEG بنظام CMYK على متصفح يخفق في اختبار فكّ ترميز أولي.

وحين يتخطى iBuildPDF صورةً فإنه يحصي التخطي ويبلّغ عنه بدل أن يفعل لا شيء بصمت. فإن لم يتغيّر ملفك إلا بالكاد وقالت النتيجة إن معظم صوره تُخطِّيت، فذلك هو التفسير.

ما الذي يفيد فعلاً

طابِق العلاج مع السبب.

  • ملف مبني بكفاءة أصلاً. اقبل الأمر، أو غيّر ما ترسله — قسّم المستند، أو أرسل رابطاً بدل مرفق. فلن يفيد أي إعداد.
  • ملف أُعيد حفظه كثيراً. إعادة كتابة نظيفة تُسقط الكائنات اليتيمة المتراكمة؛ وإعادة التصدير من التطبيق المصدر تفعل الشيء نفسه.
  • الخطوط. أعد التصدير مع تفعيل التجزئة. ولا تزل الخطوط.
  • الرسوم المتجهة. بسّط الرسم عند المصدر، أو حوّله إلى نقاط.
  • صيغ الصور المتخطاة. وجود JBIG2 أو CCITT يعني أن الملف على الأرجح قريب من قاعه أصلاً؛ فدعه وشأنه. أما JPEG 2000 فإعادة التصدير من برنامج المسح بمخرَج JPEG عادي تعطي عادةً ملفاً يمكن بعدها ضغطه بشكل طبيعي.

وفي الملف المثقل بالرسوم المتجهة، يكون التحويل إلى نقاط هو الرافعة الوحيدة المتبقية. فالوضع الأقصى في /compress-pdf يرسم كل صفحة ويستبدل بها صورة JPEG لها، فيعتمد حجم الناتج على أبعاد الصفحة والجودة فقط لا على تعقيد العمل الفني. وهو ينجح. لكنه أيضاً الوضع المتلِف الوحيد، والصفحة تقول ذلك قبل أن تشغّله: فالنتيجة بلا نص قابل للتحديد، وبلا بحث، وبلا نسخ ولصق، وبلا روابط أو حقول نماذج عاملة، ولا شيء فيها لقارئ الشاشة، ورسومها المتجهة تتشوّش عند التكبير أو الطباعة بحجم أكبر. وبما أن iBuildPDF لا يقوم بأي تعرّف ضوئي، فلا شيء هنا يستطيع استعادة طبقة نص بعد ذلك. احتفظ بالأصل.

ولمعرفة آلية ما يغيّره كل وضع، راجع كيف يعمل ضغط PDF.

الأدوات التي يغطيها هذا المقال

المصادر

التوثيق الأساسي للمعلومات الواردة أعلاه.

آخر مراجعة: 16 سبتمبر 2026

نشر بواسطة iBuildPDF.

المزيد من قاعدة المعرفة

تصفّح قاعدة المعرفة