صورة بيتماب Windows (.bmp)
Microsoft قياسيملف صورة نقطية (BMP) هو تنسيق رسومات نقطية أساسي مستقل عن الجهاز من مايكروسوفت، يقوم بتخزين خطوط المسح غير المضغوطة أو المضغوطة بترميز RLE مع توافق مباشر مع ذاكرة الإطار للعتاد (Framebuffer).
تحويل BMP إلى PNG
محول مجاني داخل المتصفح للتحويل من BMP إلى PNG. قم بتحويل الملفات فوراً على جهازك.
فحص البيانات الوصفية
تتعرف أنظمة التشغيل ومحللات الملفات على ملفات BMP من خلال فحص تسلسل البايت الثنائي البادئ:
توقيع رأس الملف على مستوى البايت (Magic Bytes)
تتعرف أنظمة التشغيل ومحللات الملفات على ملفات BMP من خلال فحص تسلسل البايت الثنائي البادئ:
التوقيع الست عشري (الإزاحة 0):
42 4Dتمثيل ASCII: BM
القياسية: Microsoft Windows Device-Independent Bitmap (DIB) Architecture
المواصفات الفنية
| هيكلية الحاوية | BITMAPFILEHEADER followed by BITMAPINFOHEADER (DIB) and raster pixel array |
| الضغط | Uncompressed raw scanlines, or optional BI_RLE8 / BI_RLE4 run-length encoding |
| ترتيب البايتات (Endianness) | Little-Endian (Intel x86 byte order) |
| مساحات الألوان | Device Dependent RGB, sRGB (BITMAPV5HEADER embedded) |
| القنوات والبنية | 1-bit monochrome, 4-bit / 8-bit paletted, 16-bit, 24-bit RGB, or 32-bit RGBA |
| الحد الأقصى للأبعاد | 2,147,483,647 x 2,147,483,647 pixels (signed 32-bit integer) |
| الشفافية | 32-bit BGRA alpha mask supported in modern BITMAPV3HEADER and V5HEADER formats |
| البث والتحميل التدرجي | Non-streamable; scanlines stored upside-down (bottom-up) unless height is negative |
مصفوفة المقارنة التقنية: BMP مقابل المنافسين
| السمة التقنية | BMP (الحالي) | PNG | TIFF | JPG |
|---|---|---|---|---|
| وضع الضغط | غير مضغوط / ضغط RLE أدنى | ضغط Deflate بدون فقدان (~أصغر بنسبة 70%) | غير مضغوط / LZW / Zip | ضغط DCT مع فقدان (~أصغر بنسبة 90%) |
| سرعة فك التشفير | نسخ ذاكرة فوري | يتطلب فك ضغط Deflate | يتطلب فك ضغط LZW/ZIP | يتطلب حساب IDCT |
| ترتيب خطوط المسح | من الأسفل إلى الأعلى (مقلوب) | من الأعلى إلى الأسفل | من الأعلى إلى الأسفل / شرائح | كتل MCU من الأعلى إلى الأسفل |
| ملاءمة الويب | ضعيفة جداً (حمولات بيانات ضخمة) | ممتازة للرسومات | ضعيفة (النشر المكتبي) | ممتازة للتصوير الفوتوغرافي |
أنماط التلف الشائعة ودليل استرداد النظام السداسي
تظهر الصورة مائلة قطرياً أو مشوهة بزاوية.
السبب الجذري: حساب حشو الصفوف غير صحيح (الفشل في حشو كل خط مسح بحدود 4 بايت).
الاسترداد: إعادة التشفير باستخدام File2File Image Converter لفرض محاذاة صحيحة لخط المسح بعمق 32 بت.
تحليل الأمان وناقلات هجوم المحلل اللغوي
تعاني برامج فك تشفير BMP غالباً من قراءات زايدة للذاكرة المؤقتة عند تخصيص المخازن المؤقتة استناداً إلى أبعاد ترويسة DIB غير الموثوقة.
ناقلات الهجوم المعروفة
- تجاوز سعة العدد الصحيح في حساب العرض * الارتفاع * عمق البكسل مما يؤدي إلى تخصيص ذاكرة كومة صغيرة وكتابة خارج الحدود.
- تسلسلات الهروب لأطوال التشغيل التالفة RLE8/RLE4 مسببة كتابة في الذاكرة تتجاوز المخزن المؤقت المخصص.
- حرمان من الخدمة (Denial of Service) من خلال تخصيص ذاكرة بعدة جيجابايتات ناجمة عن أبعاد ترويسة مصممة خصيصاً.
أفضل الممارسات الدفاعية:
الأصول التاريخية والمحطات الرئيسية
المزايا الرئيسية والإيجابيات
- صفر تدهور في الضغط: تخزين بكسل دقيق بنسبة 100% مع عدم وجود آثار ضغط.
- دعم أصلي شامل لنظام التشغيل عبر جميع إصدارات ويندوز، لينكس، وماك أو إس.
- تعقيد فك التشفير البسيط يجعله مثالياً للمتحكمات الدقيقة المدمجة وتعليم برمجة الرسوميات.
القيود الفنية والسلبيات
- حوم ملفات ضخمة بسبب عدم وجود ضغط إنتروبيا حديث مثل DEFLATE أو ترميز هوفمان.
- غير فعال لنقل البيانات عبر الويب أو التوزيع عبر شبكات الهواتف المحمولة.
- ترتيب خطوط المسح من الأسفل إلى الأعلى يتطلب عكس الصفوف رأسياً في خطوط إنتاج الرسوميات الحديثة من الأعلى إلى الأسفل.
معلومات تقنية طريفة
- يقوم تنسيق BMP بتخزين خطوط المسح الخاصة بالصورة بالمقلوب (من الأسفل إلى الأعلى) افتراضياً بسبب نظام الاحداثيات الديكارتية الرياضي المستخدم في نظام OS/2.
- إذا تم ضبط قيمة الارتفاع في ترويسة BMP على رقم سالب، يتم فك تشفير الصورة بالشكل الصحيح من الأعلى إلى الأسفل.
- يجب حشو كل خط مسح في ملف BMP بأصفار لتصل إلى مضاعفات 4 بايت (محاذاة حدود 32 بت).
الأسئلة التقنية المتكررة
لماذا ملفات BMP كبيرة جداً؟
تخزن ملفات BMP قيم ألوان خام وغير مضغوطة لكل بكسل فردي، بينما تقوم تنسيقات مثل PNG ضغط هذه البيانات دون فقدان أي جودة.
هل تدعم صيغة BMP الشفافية؟
نعم. يمكن لملفات BMP ذات 32 بت (التي تستخدم BITMAPV3HEADER أو أحدث) تخزين قناة ألفا بسعة 8 بت، على الرغم من أن الدعم يختلف باختلاف البرامج القديمة.
كيف يمكنني تقليل حجم ملف BMP؟
يؤدي تحويل ملف BMP إلى PNG باستخدام File2File.app عادةً إلى تقليل حجم الملف بنسبة تتراوح بين 60% و85% مع عدم وجود أي فقدان في الجودة المرئية.
أزواج تحويل BMP ذات الصلة
يؤدي تحويل ملفات نقطيات ويندوز غير المضغوطة إلى PNG إلى توفير ضغط بدون فقدان يقلل من أحجام الملفات دون تقليل جودة الصورة.
يؤدي تحويل رسومات الشبكة الرسومية المحمولة إلى نقطيات ويندوز إلى تحويل بيانات النقطيات المضغوطة إلى شبكة بكسل غير مضغوطة لأنظمة التشغيل القديمة وخطوط أنابيب الأجهزة.