image · 8 دقائق قراءة

كيف تضغط صورة دون إفسادها

شريط الجودة ليس نسبة من أي شيء. معرفة ما يفعله فعلًا تحوّل التخمين إلى قرار.

كل واحد حرّك ذلك الشريط ثم تمنّى. الثمانون تبدو آمنة، والتسعون تبدو حريصة، والمئة تبدو مسؤولة. لا واحد من هذه الأرقام يعني ما يبدو أنه يعنيه، والفرق بين الجيّد منها والرديء أكبر ممّا يتوقّع معظم الناس.

100 كيلوبايت بالبكسل

ليست تحويلًا

الكيلوبايت وزن والبكسل مقاس، ولا شيء ثابت يربط بينهما: فإطار 1920 × 1080 نفسه يكون 40 كيلوبايت من سماء خالية أو 3 ميغابايت من أوراق شجر. الذي يمكن قوله هو أين تقع الصورة الفوتوغرافية المزدحمة تقريبًا — نحو 100 كيلوبايت عند عرض بين 640 و800 بكسل بجودة عادية. وإن احتجت رقمًا مضبوطًا، فصوّب إليه مباشرةً بدل تخمين الأبعاد.

صورة اختبار واحدة مزدحمة، بجودة JPEG 0.8، بأربعة مقاسات
البكسلاتتزن
640 × 48075 كيلوبايت
800 × 600118 كيلوبايت
1280 × 960301 كيلوبايت
1920 × 1440677 كيلوبايت

تلك الأرقام لصورة واحدة. فصورة فوتوغرافية لجدار سادة بأبعاد 1920 × 1440 قد تكون عُشر 677 كيلوبايت، وصورة لغابة ضعفها. العلاقة حقيقية — أربعة أضعاف البكسلات هي نحو أربعة أضعاف الوزن — لكن نقطة البداية تتحرّك مع الصورة.

ماذا تفعل JPEG

مرمّز JPEG لا يخزّن بكسلاتك. بل يقطّع الصورة إلى كتل 8×8 ويعيد كتابة كل كتلة مجموعةَ ترددات — كم فيها من درجة مسطّحة، وكم من تغيّر هادئ، وكم من تفصيل دقيق. ذلك التحويل بلا فقد حتى الآن؛ لم يذهب شيء.

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

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

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

كم يكلّف الإعداد

السؤال المثير ليس كيف تبدو الجودة بل كم تكلّف. هذه الصورة النقطية نفسها مرمَّزة إحدى عشرة مرة:

صورة نقطية واحدة، مرمَّزة إحدى عشرة مرةمقيسة بـscripts/measure-jpeg.mjs — الشكل شكل JPEG، والبايتات بايتات هذه الصورةq 1001100 كيلوبايت — لا شيء منه مرئيq 95568 كيلوبايتq 90444 كيلوبايتq 85371 كيلوبايتq 80320 كيلوبايت — حيث تنتمي معظم الصورq 75279 كيلوبايتq 70251 كيلوبايتq 60202 كيلوبايتq 50165 كيلوبايتq 40132 كيلوبايتq 3098 كيلوبايت
خطوة واحدة نزولًا من 100 تحذف نصف الملف. تلك الخطوة وحدها توفّر أكثر من كل خطوة من 85 إلى 30 مجتمعة، ولا يراها أحد — فالجودة 100 تنفق بايتاتها في تسجيل الفرق بين حُبيبات وحُبيبات تختلف عنها قليلًا. الصورة النقطية نفسها بصيغة PNG بلا فقد تبلغ 2,299 كيلوبايت، أي ضعف أكبر ملف JPEG هنا، ولهذا لا تُحفظ الصور الفوتوغرافية بصيغة PNG.

خطوة واحدة نزولًا من 100 تحذف نصف الملف. تلك الخطوة وحدها توفّر أكثر من كل خطوة من 85 نزولًا إلى 30 مجتمعة، وليس فيها شيء يستطيع إنسان رؤيته — فعند الجودة 100 يسجّل المرمّز بأمانة الفرق بين حُبيبات وحُبيبات تختلف عنها قليلًا.

تحت 75 تقريبًا يستوي المنحنى: كل خطوة تكلّف جودة مرئية وتعيد بايتات أقلّ فأقلّ. تلك هي صورة القرار كلّها. ما بين 75 و85 هو موضع كل صورة فوتوغرافية تقريبًا.

لماذا تجعلها إعادة الحفظ أسوأ

افتح ملف JPEG، واقصصه، واحفظه. المرمّز يبدأ ممّا أُعطي — صورة قُرّبت تفاصيلها الدقيقة أصلًا — ويقرّب مرة أخرى على شبكة لم تعد تنطبق على الأولى. أخطاء التمريرة الأولى تصير مدخلًا للثانية. هذا هو فقد الأجيال، وهو يتراكم دون أن يريك لحظة واحدة اختلّ فيها شيء.

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

الخطوة التي تتفوّق على كل إعداد

صورة الهاتف بعرض 4,000 بكسل تقريبًا. تدوينة تعرضها عند 800. فرفع الأصل يعني إرسال خمسة وعشرين ضعف ما سيراه أحد من بكسلات، ولا يستردّ ذلك أي إعداد جودة — فأنت تضغط تفصيلًا سيرميه المتصفّح على أي حال.

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

متى تكون JPEG الجواب الخاطئ

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

  • لقطات الشاشة والنص والرسوم الخطية والشعارات — PNG. فالألوان القليلة والحواف الحادّة هي ما وُجدت له، وهي بلا فقد، فلا شيء يتلطّخ.
  • أي شيء شفّاف — PNG أو WebP. فصيغة JPEG بلا شفافية؛ احفظ بها فتصير الأجزاء الشفّافة سوداء أو بيضاء.
  • الصور الفوتوغرافية — JPEG أو WebP. لا PNG أبدًا. فالصورة النقطية في الشكل أعلاه تبلغ 2,299 كيلوبايت بصيغة PNG بلا فقد، أي ضعف حجم أكبر ملف JPEG في الرسم، وتبدو كما هي.

WebP وAVIF

صيغة WebP أصغر من JPEG بنحو 25–35% بالجودة نفسها، وتدعم الشفافية، وتعمل في كل متصفّح يستعمله الناس فعلًا. هي الخيار الافتراضي المعقول اليوم.

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

الخلاصة

غيّر المقاس إلى ما ستُرى به فعلًا. صدّر بجودة 80 — أو 85 إن كانت ستُطبع أو تُفحص عن قرب. استعمل WebP حيث تستطيع، وPNG لكل ما فيه نص أو شفافية، ولا PNG أبدًا لصورة فوتوغرافية. احتفظ بالأصل، ولا تحرّر ملف JPEG مرتين أبدًا.

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

أسئلة

كم بكسلًا في 100 كيلوبايت؟

لا تحويل هنا. الكيلوبايت يقيس وزن الملف والبكسل يقيس حجم الصورة، ولا شيء ثابت يربط بينهما: فإطار 1920 × 1080 نفسه يكون 40 كيلوبايت من سماء خالية أو 3 ميغابايت من أوراق شجر. على وجه التقريب، الصورة الفوتوغرافية المزدحمة بجودة JPEG عادية تتجاوز 100 كيلوبايت عند عرض بين 640 و800 بكسل — لكن جدارًا سادة سيكون كسرًا من ذلك وغابة أضعافه. لإصابة حجم ملف مضبوط، صوّب إلى الحجم مباشرةً بدل تخمين الأبعاد.

أي إعداد جودة JPEG أستخدم؟

80 لمعظم الأغراض، و85 إن كانت ستُطبع أو تُفحص عن قرب. الإعداد ليس نسبة من أي شيء — بل يقرّر شدّة تقريب التفاصيل الدقيقة إلى الصفر — والمدى فوق 90 يكلّف حجمًا كبيرًا مقابل فرق لا يراه أحد.

لماذا تنتج الجودة 100 ملفًا بهذا الكبر؟

لأنها تخزّن تفصيلًا لا تستطيع عينك تمييزه. خطوة واحدة نزولًا، من 100 إلى 95، تحذف نصف الملف تقريبًا وتوفّر أكثر من كل خطوة من 85 نزولًا إلى 30 مجتمعة. أعلى السلّم هو موضع الهدر.

هل تجعل إعادة حفظ JPEG الصورة أسوأ؟

نعم، في كل مرة، وبلا رجعة. فكل حفظ يعيد تقريب بيانات التردّد ويتراكم الضرر، فالملف المحرَّر خمس مرات يحمل خمسة أجيال من الفقد. احتفظ بالأصل وحرّر منه دائمًا لا من النسخة المصدَّرة.

ما الذي يقلّل حجم الصورة أكثر من شريط الجودة؟

تغيير المقاس. فصورة تُعرض بعرض 800 بكسل وهي مخزّنة بعرض 4,000 تحمل خمسة وعشرين ضعف ما تحتاجه من بكسلات، ولا يستردّ ذلك أي إعداد جودة. غيّر المقاس إلى ما ستُرى به، ثم اضغط.

أستخدم WebP بدل JPEG؟

عادةً نعم. صيغة WebP أصغر بنحو 25–35% بالجودة نفسها، وتدعم الشفافية، وتعمل في كل متصفّح يستعمله الناس فعلًا. أبقِ JPEG لملف يجب أن يفتح في أي مكان دون تفكير.

أدوات من هذا الدليل

المزيد من أدوات الصور — كلّها تعمل في متصفّحك، ولا واحدة منها ترفع ملفًّا.