विंडोज बिटमैप (.bmp)

Microsoft मानक

बिटमैप इमेज फाइल (BMP) माइक्रोसॉफ्ट का मौलिक डिवाइस-इंडिपेंडेंट रास्टर ग्राफिक्स फॉर्मेट है, जो सीधे हार्डवेयर फ्रेमबफर संगतता के साथ अनकम्प्रेस्ड या RLE-कम्प्रेस्ड स्कैनलाइन को स्टोर करता है।

BMP को PNG में कन्वर्ट करें

मुफ्त इन-ब्राउज़र BMP से PNG कन्वर्टर। अपने डिवाइस पर तुरंत फ़ाइलें कन्वर्ट करें।

निरीक्षण और मेटाडेटा

ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके BMP फ़ाइलों की पहचान करते हैं:

फ़ाइलें यहाँ चुनें या छोड़ें

निजी - फ़ाइलें कभी आपके डिवाइस से बाहर नहीं जातीं

या पेस्ट करें Ctrl+V
नेटवर्क पर कोई डेटा भेजे बिना गोपनीयता की गारंटी: बाहरी सर्वर पर 0 बाइट अपलोड किए गए। सारी प्रोसेसिंग आपके ब्राउज़र सैन्डबॉक्स में स्थानीय रूप से हुई।

बाइट-स्तरीय हेडर हस्ताक्षर (मैजिक बाइट्स)

ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके BMP फ़ाइलों की पहचान करते हैं:

HEX हस्ताक्षर (ऑफ़सेट 0):

42 4D

ASCII निरूपण: BM

मानकीकरण: Microsoft Windows Device-Independent Bitmap (DIB) Architecture

तकनीकी विनिर्देश

कंटेनर आर्किटेक्चरBITMAPFILEHEADER के बाद BITMAPINFOHEADER (DIB) और रास्टर पिक्सेल ऐरे
कंप्रेशनअसंपीड़ित कच्ची स्कैनलाइनें, या वैकल्पिक BI_RLE8 / BI_RLE4 रन-लेंथ एन्कोडिंग
बाइट एंडियानेसलिटिल-एंडियन (Intel x86 बाइट क्रम)
कलर स्पेसDevice Dependent RGB, sRGB (BITMAPV5HEADER embedded)
चैनल और संरचना1-bit मोनोक्रोम, 4-bit / 8-bit पैलेट-आधारित, 16-bit, 24-bit RGB, या 32-bit RGBA
अधिकतम आयाम2,147,483,647 x 2,147,483,647 पिक्सेल (साइन किया हुआ 32-bit पूर्णांक)
पारदर्शिताआधुनिक BITMAPV3HEADER और V5HEADER फ़ॉर्मैट में 32-bit BGRA अल्फ़ा मास्क समर्थित है
स्ट्रीमिंग और प्रोग्रेसिवस्ट्रीमिंग समर्थित नहीं; स्कैनलाइनें उलटी (नीचे से ऊपर) संग्रहीत होती हैं, जब तक कि ऊँचाई ऋणात्मक न हो

तकनीकी तुलना मैट्रिक्स: BMP बनाम प्रतियोगी

तकनीकी विशेषताBMP (वर्तमान)PNGTIFFJPG
कम्प्रेशन मोडअसंपीड़ित / न्यूनतम RLEदोषरहित Deflate संपीड़न; फ़ाइल आकार में बचत छवि सामग्री पर निर्भर करती हैअनकम्प्रेस्ड / LZW / Zipहानिपूर्ण DCT (फ़ाइल लगभग 90% छोटी)
डिकोड स्पीडमेमोरी की तुरंत कॉपीडिफ्लेट डीकंप्रेसन की आवश्यकता हैLZW/ZIP डीकंप्रेसन की आवश्यकता हैIDCT गणना की आवश्यकता है
स्कैनलाइन ऑर्डरिंगबॉटम-टू-टॉप (उल्टा)टॉप-टू-बॉटमटॉप-टू-बॉटम / स्ट्रिप्सटॉप-टू-बॉटम MCU ब्लॉक्स
वेब उपयुक्तताबहुत खराब (बहुत बड़े पेलोड)ग्राफिक्स के लिए उत्कृष्टखराब (डेस्कटॉप पब्लिशिंग)फोटोग्राफी के लिए उत्कृष्ट

सामान्य करप्शन मोड और हेक्स रिकवरी गाइड

छवि तिरछी कटी हुई या एक कोण पर झुकी हुई दिखाई देती है।

मूल कारण: गलत पंक्ति पैडिंग गणना (प्रत्येक स्कैनलाइन को 4-बाइट सीमा तक पैड करने में विफलता)।

रिकवरी: सही 32-बिट स्कैनलाइन स्ट्राइड को लागू करने के लिए File2File.app Image Converter का उपयोग करके पुन: एन्कोड करें।

सुरक्षा विश्लेषण और पार्सर अटैक वेक्टर्स

अविश्वसनीय DIB हेडर आयामों के आधार पर बफ़र आवंटित करने पर BMP डिकोडर अक्सर बफ़र से सीमा के बाहर डेटा पढ़ लेते हैं।

ज्ञात अटैक वेक्टर्स

  • width * height * bpp की गणना में पूर्णांक ओवरफ़्लो से हीप में कम मेमोरी आवंटित हो सकती है और सीमा से बाहर डेटा लिखा जा सकता है।
  • दूषित RLE8/RLE4 रन-लेंथ एस्केप सीक्वेंस से आवंटित बफ़र की सीमा के बाहर मेमोरी में डेटा लिखा जा सकता है।
  • विशेष रूप से बनाए गए हेडर आयामों द्वारा ट्रिगर किए गए मल्टी-गीगाबाइट मेमोरी आवंटन के माध्यम से सर्विस से इनकार।

सुरक्षात्मक सर्वोत्तम प्रथाएँ: गंतव्य मेमोरी आवंटित करने से पहले DIB हेडर चौड़ाई, ऊंचाई और बिट गहराई सीमाओं को सख्ती से सत्यापित करें।

ऐतिहासिक मूल और मील के पत्थर

1998Windows 98 ने ICC रंग प्रोफ़ाइल प्रबंधन और गामा सुधार जोड़ते हुए BITMAPV5HEADER पेश किया।
1990Windows 3.0 ने पूरे ऑपरेटिंग सिस्टम में BITMAPINFOHEADER DIB विनिर्देश को मानकीकृत किया।
1987मूल प्रदर्शन रास्टर प्रारूप के रूप में Windows 2.0 और OS/2 1.1 के साथ पेश किया गया।

मुख्य लाभ और खूबियाँ

  • शून्य संपीड़न क्षरण: शून्य संपीड़न कलाकृतियों के साथ 100% बिट-सटीक पिक्सेल भंडारण।
  • Windows में BMP के लिए मूल कोडेक है, जबकि अन्य ऑपरेटिंग सिस्टम और ऐप में समर्थन अलग-अलग होता है।
  • डिकोडिंग की सरलता इसे एम्बेडेड माइक्रोकंट्रोलर और ग्राफिक्स प्रोग्रामिंग शिक्षा के लिए आदर्श बनाती है।

तकनीकी सीमाएँ और कमियाँ

  • DEFLATE या हॉफमैन कोडिंग जैसे आधुनिक एन्ट्रॉपी संपीड़न की कमी के कारण भारी फ़ाइल आकार।
  • वेब ट्रांसमिशन या मोबाइल नेटवर्क वितरण के लिए अकुशल।
  • बॉटम-अप स्कैनलाइन ऑर्डरिंग के लिए आधुनिक टॉप-डाउन ग्राफिक्स पाइपलाइन में लंबवत पंक्ति व्युत्क्रम की आवश्यकता होती है।

रोचक तकनीकी जानकारी

  • BMP OS/2 में उपयोग किए जाने वाले गणितीय कार्टेशियन निर्देशांक प्रणाली के कारण डिफ़ॉल्ट रूप से छवि स्कैनलाइन को उल्टा (नीचे से ऊपर) स्टोर करता है।
  • यदि BMP हेडर में ऊंचाई मूल्य को नकारात्मक संख्या पर सेट किया जाता है, तो छवि को सीधे-सीधे (ऊपर से नीचे) डिकोड किया जाता है।
  • BMP फ़ाइल में प्रत्येक स्कैनलाइन को 4 बाइट्स के गुणक (32-बिट बाउंड्री एलाइनमेंट) में शून्य के साथ पैड किया जाना चाहिए।

अक्सर पूछे जाने वाले तकनीकी प्रश्न

BMP फ़ाइलें इतनी बड़ी क्यों होती हैं?

BMP फ़ाइलें हर पिक्सेल के असंपीड़ित रंग मान सहेजती हैं, जबकि PNG जैसे फ़ॉर्मैट बिना गुणवत्ता घटाए उस डेटा को संपीड़ित करते हैं।

क्या BMP पारदर्शिता का समर्थन कर सकता है?

हाँ। 32-बिट BMP फ़ाइलें (BITMAPV3HEADER या नए का उपयोग करके) 8-बिट अल्फा चैनल को स्टोर कर सकती हैं, हालांकि पुराने सॉफ्टवेयर में समर्थन अलग-अलग हो सकता है।

मैं BMP फ़ाइल का आकार कैसे कम कर सकता हूँ?

BMP फ़ाइल को PNG में बदलने से पिक्सेल मान सुरक्षित रहते हुए फ़ाइल का आकार घट सकता है, लेकिन परिणाम छवि की सामग्री और BMP एन्कोडिंग पर निर्भर करता है।