صورة بيتماب Windows (.bmp)
Microsoft قياسيملف الصور النقطية (BMP) تنسيق رسومات نقطية أساسي مستقل عن الجهاز من Microsoft؛ يخزّن خطوط مسح غير مضغوطة أو مضغوطة بترميز RLE، ويتوافق مباشرةً مع مخزن إطارات العرض في العتاد (framebuffer).
تحويل BMP إلى PNG
محول مجاني داخل المتصفح للتحويل من BMP إلى PNG. قم بتحويل الملفات فوراً على جهازك.
فحص البيانات الوصفية
تتعرف أنظمة التشغيل ومحللات الملفات على ملفات BMP من خلال فحص تسلسل البايت الثنائي البادئ:
توقيع رأس الملف على مستوى البايت (Magic Bytes)
تتعرف أنظمة التشغيل ومحللات الملفات على ملفات BMP من خلال فحص تسلسل البايت الثنائي البادئ:
التوقيع الست عشري (الإزاحة 0):
42 4Dتمثيل ASCII: BM
التوحيد القياسي: Microsoft Windows Device-Independent Bitmap (DIB) Architecture
المواصفات الفنية
| هيكلية الحاوية | BITMAPFILEHEADER يتبعه BITMAPINFOHEADER (DIB) ومصفوفة بكسلات نقطية |
| الضغط | خطوط مسح خام غير مضغوطة، أو ترميز اختياري BI_RLE8 / BI_RLE4 بطول التكرار |
| ترتيب البايتات (Endianness) | ترتيب Little-Endian (ترتيب بايتات Intel x86) |
| مساحات الألوان | Device Dependent RGB, sRGB (BITMAPV5HEADER embedded) |
| القنوات والبنية | أحادي اللون بدقة 1 بت، أو مفهرس بدقة 4/8 بت، أو RGB بدقة 16/24 بت، أو RGBA بدقة 32 بت |
| الحد الأقصى للأبعاد | 2,147,483,647 x 2,147,483,647 بكسل (عدد صحيح موقّع 32 بت) |
| الشفافية | قناع ألفا BGRA بدقة 32 بت مدعوم في تنسيقي BITMAPV3HEADER وV5HEADER الحديثين |
| البث والتحميل التدرجي | غير قابل للبث؛ تُخزّن خطوط المسح مقلوبة عموديًا (من الأسفل إلى الأعلى)، إلا إذا كان الارتفاع سالبًا |
مصفوفة المقارنة التقنية: BMP مقابل المنافسين
| السمة التقنية | BMP (الحالي) | PNG | TIFF | JPG |
|---|---|---|---|---|
| وضع الضغط | غير مضغوط / ضغط RLE أدنى | ضغط Deflate دون فقدان؛ ويختلف توفير مساحة الملف بحسب محتوى الصورة | غير مضغوط / LZW / Zip | ضغط DCT مع فقدان (أصغر بنحو 90%) |
| سرعة فك الترميز | نسخ فوري في الذاكرة | يتطلب فك ضغط Deflate | يتطلب فك ضغط LZW/ZIP | يتطلب حساب IDCT |
| ترتيب خطوط المسح | من الأسفل إلى الأعلى (مقلوب) | من الأعلى إلى الأسفل | من الأعلى إلى الأسفل / شرائح | كتل MCU من الأعلى إلى الأسفل |
| ملاءمة الويب | ضعيفة جداً (حمولات بيانات ضخمة) | ممتازة للرسومات | ضعيفة (النشر المكتبي) | ممتازة للتصوير الفوتوغرافي |
أنماط التلف الشائعة ودليل الاسترداد بالنظام الست عشري
تظهر الصورة مائلة قطرياً أو مشوهة بزاوية.
السبب الجذري: حساب غير صحيح لحشو الصفوف (عدم محاذاة كل خط مسح إلى مضاعف 4 بايت).
الاسترداد: أعد ترميز الصورة باستخدام محول الصور في File2File.app لضمان استخدام خطوة خط مسح صحيحة بعمق 32 بت.
تحليل الأمان ومتجهات الهجوم على المحلّل
قد تقرأ مفككات BMP بيانات خارج حدود المخزن المؤقت عند تخصيص الذاكرة بناءً على أبعاد غير موثوقة في ترويسة DIB.
ناقلات الهجوم المعروفة
- قد يؤدي تجاوز سعة عدد صحيح عند حساب العرض × الارتفاع × عمق البكسل إلى تخصيص ذاكرة كومة صغيرة والكتابة خارج حدودها.
- قد تؤدي تسلسلات الهروب المشوهة لترميز الأطوال المتكررة RLE8/RLE4 إلى الكتابة في الذاكرة خارج المخزن المخصص.
- قد يؤدي تلاعب بأبعاد الترويسة إلى حجب الخدمة عبر تخصيص ذاكرة بحجم عدة جيجابايتات.
أفضل الممارسات الدفاعية: تحقّق بدقة من الحدود المسموح بها لعرض رأس DIB وارتفاعه وعمق البت قبل تخصيص ذاكرة الوجهة.
الأصول التاريخية والمحطات الرئيسية
المزايا الرئيسية والإيجابيات
- لا تتدهور جودة الصورة عند الضغط: تُخزَّن قيم البكسلات بدقة تامة، من دون آثار ضغط.
- يتضمن Windows برنامج ترميز BMP مدمجاً، بينما يختلف الدعم في أنظمة التشغيل والتطبيقات الأخرى.
- تعقيد فك التشفير البسيط يجعله مثالياً للمتحكمات الدقيقة المدمجة وتعليم برمجة الرسوميات.
القيود الفنية والسلبيات
- أحجام ملفات ضخمة بسبب غياب أساليب ضغط الإنتروبيا الحديثة مثل DEFLATE أو ترميز Huffman.
- غير فعال لنقل البيانات عبر الويب أو التوزيع عبر شبكات الهواتف المحمولة.
- يتطلب ترتيب خطوط المسح من الأسفل إلى الأعلى قلب الصفوف رأسيًا في أنظمة معالجة الرسوم الحديثة التي تقرؤها من الأعلى إلى الأسفل.
معلومات تقنية طريفة
- يقوم تنسيق BMP بتخزين خطوط المسح الخاصة بالصورة بالمقلوب (من الأسفل إلى الأعلى) افتراضياً بسبب نظام الإحداثيات الديكارتية الرياضي المستخدم في نظام OS/2.
- إذا تم ضبط قيمة الارتفاع في ترويسة BMP على رقم سالب، يتم فك تشفير الصورة بالوضع الصحيح (من الأعلى إلى الأسفل).
- يجب حشو كل خط مسح في ملف BMP بأصفار ليصل طولها إلى مضاعف من 4 بايتات (محاذاة حدود 32 بت).
الأسئلة التقنية المتكررة
لماذا ملفات BMP كبيرة جداً؟
تخزن ملفات BMP قيم ألوان خام وغير مضغوطة لكل بكسل فردي، بينما تضغط تنسيقات مثل PNG هذه البيانات دون فقدان أي جودة.
هل تدعم صيغة BMP الشفافية؟
نعم. يمكن لملفات BMP ذات 32 بت (التي تستخدم BITMAPV3HEADER أو أحدث) تخزين قناة ألفا بسعة 8 بت، على الرغم من أن الدعم يختلف باختلاف البرامج القديمة.
كيف يمكنني تقليل حجم ملف BMP؟
قد يقلل تحويل BMP إلى PNG حجم الملف مع الحفاظ على قيم البكسل، لكن النتيجة تعتمد على محتوى الصورة وترميز BMP.
أزواج تحويل BMP ذات الصلة
يؤدي تحويل ملفات نقطيات ويندوز غير المضغوطة إلى PNG إلى توفير ضغط بدون فقدان يقلل من أحجام الملفات دون تقليل جودة الصورة.
يؤدي تحويل صور PNG إلى صور Windows النقطية إلى تحويل بيانات الصور النقطية المضغوطة إلى شبكة بكسلات غير مضغوطة لأنظمة التشغيل القديمة ومسارات معالجة الأجهزة.
ضع لقطة شاشة بصيغة BMP مدعومة في صفحة PDF واحدة لتذكرة أو تقرير. تقبل هذه الطريقة صورًا غير مضغوطة بعمق 24 أو 32 بت، لا أنواع BMP المضغوطة.