PDFMove
ما BMP، ولماذا لا يزال يصادفنا؟
دليل

ما BMP، ولماذا لا يزال يصادفنا؟

4 دقيقة للقراءة

عناد تنسيق عمره أربعون عامًا

عندما تصادف ملفًا بامتداد .bmp على حاسوبك فالأرجح أنك لست من أنتجه. فـ BMP تنسيق صور نقطية عرّفته Microsoft لنظام Windows في أواخر ثمانينيات القرن الماضي، ولم يبقَ أي سبب تقريبًا لاختياره عن قصد في سير عمل حديث. ومع ذلك لا يزال يصادفنا.

وفي هذا المقال نشرح ما هذا التنسيق فعلًا، ولماذا يشغل هذا القدر من المساحة، وفي أي الزوايا لا يزال حيًّا اليوم، وماذا ينبغي أن تفعل حين يقع بين يديك ملف BMP.

كيف يعمل BMP؟

يكفي لفهم BMP أن تفهم فلسفة التنسيق: افعل أغبى شيء ممكن.

فملف BMP مؤلف من كتلة ترويسة قصيرة يليها مصفوفة بكسلات خام. ولا تخضع بيانات البكسل عادةً لأي ضغط — إذ تُكتب قيمة لون كل بكسل في الملف مباشرة. وهذا أكبر نقاط ضعف التنسيق وقوته الحقيقية الوحيدة معًا.

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

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

وثمة في المواصفة مخطط ضغط يُسمى RLE (ترميز طول التتابع) لكنه نادر الاستخدام عمليًا ولا يسري إلا على أعماق البت المنخفضة. والأغلبية الساحقة من ملفات BMP التي تصادفها غير مضغوطة.

مسألة الشفافية

يستطيع متغيّر 32 بت BGRA من BMP حمل قناة ألفا لكل بكسل، أي إن الشفافية ممكنة نظريًا. أما عمليًا فهذا فخ.

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

أين نصادف BMP اليوم؟

لم يمت التنسيق لأن الأنظمة التي تنتجه لم تمت. وأكثر المصادر ورودًا هي:

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

أي أن BMP ليس خيارًا حديثًا؛ بل أثر خلّفته الأنظمة القديمة.

لماذا يلزمك التحويل؟

حين يقع بين يديك ملف BMP فإن استخدامه كما هو يسبب مشكلة في كل الأحوال تقريبًا:

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

رفض المنصات. فالجزء الأكبر من منصات التواصل الاجتماعي وتطبيقات المراسلة وأنظمة إدارة المحتوى لا يقبل رفع BMP. وعند محاولة الرفع إلى موقع إلكتروني تتلقى في أغلب الأحيان تنبيهًا بأن التنسيق غير مدعوم.

سلوك المتصفحات غير المتسق. فبعض المتصفحات يعرض BMP وبعضها لا يعرضه. والاعتماد على ذلك في الويب غير منطقي؛ وهو غير قابل للدفاع عنه من ناحية الحجم أصلًا.

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

ماذا تفعل بملف BMP الذي بحوزتك؟

شجرة القرار بسيطة إلى حد بعيد:

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

إذا كان المحتوى صورة فوتوغرافية وكان الهدف المشاركة: فإن التحويل إلى JPG يعطي أصغر ملف. وهي عملية مع فقد، ويذهب قدر من البيانات نهائيًا، لكن هذه المقايضة رابحة عادةً في المحتوى الفوتوغرافي.

إذا كان الملف سيصبح مُدخلًا لبرنامج يتوقع BMP: فلا تمسّه. وهذا هو المبرر الوحيد الصالح اليوم لاستخدام BMP.

خلاصة القول

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

الأسئلة الشائعة

لماذا ملفات BMP بهذا الحجم الكبير؟

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

هل يدعم BMP الشفافية؟

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

هل تعرض المتصفحات ملفات BMP؟

بعضها يعرضها لكن السلوك غير متسق وينبغي ألّا يُعتمد عليه. فـ BMP ليس تنسيقًا مصممًا للويب ولا موضع له فعليًا في منظومة الويب. والأهم من ذلك المشكلة العملية: فوضع ملف غير مضغوط في صفحة ويب أمر غير مقبول من ناحية زمن تحميل الصفحة. كما أن الجزء الأكبر من منصات التواصل الاجتماعي وتطبيقات المراسلة وأنظمة إدارة المحتوى يرفض رفع BMP رفضًا مباشرًا.

هل لـ BMP ميزة على JPG أو PNG؟

لا توجد له ميزة ذات معنى في سيناريوهات الاستخدام اليوم. فإذا أردت تخزينًا عديم الفقد فإن PNG يؤدي المهمة نفسها وينتج ملفًا أصغر بكثير؛ وإذا أردت الشفافية فإن PNG يدعمها دعمًا موثوقًا. والتفوق الحقيقي الوحيد لـ BMP هو بساطته: فبنية الملف بسيطة إلى حد يتيح حتى للعتاد شديد المحدودية قراءتها مباشرة دون فك ترميز. ولهذا لا تزال بعض الأنظمة المدمجة والأجهزة الصناعية تتوقع BMP. وفيما عدا ذلك ليس BMP تنسيقًا يُفضَّل.

جرّب ذلك الآن باستخدام BMP → JPG Dönüştür.

جرّب BMP → JPG Dönüştür