GIF को BMP में बदलें

यहाँ आप GIF को BMP में बदलते हैं, मुफ़्त और बिना खाते के: फ़ाइल ऊपर छोड़िए और कुछ ही सेकंड में नतीजा डाउनलोड के लिए तैयार मिलेगा। कन्वर्ज़न आपके अपने ब्राउज़र के भीतर होता है, इसलिए फ़ाइल कभी अपलोड नहीं होती। यह Windows, macOS और Linux पर वैसे ही चलता है जैसे iPhone और Android पर, और कनेक्शन काट देने पर भी चलता रहता है।

  • कहाँ चलता है आपके ब्राउज़र में। फ़ाइल कभी अपलोड नहीं होती।
  • कुछ नुक़सान के साथ रंग बिल्कुल वैसे ही रहते हैं। BMP पारदर्शिता नहीं रख सकता, इसलिए कटे हुए हिस्से पृष्ठभूमि के रंग से भर दिए जाते हैं।
  • फ़ाइल आकार की सीमा हर फ़ाइल 100 MB तक, मुफ़्त, बिना खाते के।
  • जानने लायक़ सिर्फ़ पहला फ़्रेम बदला जाता है: चलती हुई GIF ठहरी हुई तस्वीर बन जाती है।

एक बार में 100 फ़ाइलें। फ़ॉर्मेट अलग-अलग हों तो भी चलेगा।

GIF से BMP असल में करता क्या है

GIF 36 KBBMP 450 KB 12.4× बड़ी

एक तस्वीर जैसा दृश्य — मुलायम ढाल, नरम किनारे, महीन दाने। BMP या तो ठीक इसी के लिए बना है या ठीक इसी के ख़िलाफ़, और आँकड़े बता देते हैं कि कौन-सा। दोनों तस्वीरें कोड से बनाई गई हैं और उसी कन्वर्टर से एनकोड हुई हैं जो इस पेज पर चलता है, इसलिए ये आकार इसी साइट की अपनी पैदावार हैं।

GIF 8 KBBMP 450 KB 59.9× बड़ी

पीछे पारदर्शी और आकृति पर एक रंग-ढाल। BMP या तो दोनों रखता है, या एक, या पारदर्शिता को किसी ठोस रंग से भर देता है — और लोग ठीक इसी अंतर पर फँसते हैं। दोनों तस्वीरें कोड से बनाई गई हैं और उसी कन्वर्टर से एनकोड हुई हैं जो इस पेज पर चलता है, इसलिए ये आकार इसी साइट की अपनी पैदावार हैं।

GIF 6 KBBMP 450 KB 72.9× बड़ी

सपाट रंग और कड़े किनारे, जैसे किसी इंटरफ़ेस, चार्ट या लोगो में होते हैं। ऊपर वाली तस्वीर से बर्ताव बिल्कुल अलग, और यही वजह है कि जवाब हमेशा यही होता है कि फ़ाइल में क्या है उस पर निर्भर करता है। दोनों तस्वीरें कोड से बनाई गई हैं और उसी कन्वर्टर से एनकोड हुई हैं जो इस पेज पर चलता है, इसलिए ये आकार इसी साइट की अपनी पैदावार हैं।

यहाँ कोई BMP चुनता नहीं, कोई मशीन माँगती है

यह कन्वर्ज़न लगभग हमेशा एक ही वजह से होता है: कोई डिवाइस या पुराना प्रोग्राम जो सिर्फ़ बिटमैप पढ़ना जानता है। किसी लैब उपकरण का डिस्प्ले, किसी लेबल प्रिंटर का फ़र्मवेयर, कोई पुराना Visual Basic या Delphi नियंत्रण — इन सबने डिकोडर लिखने की ज़हमत कभी नहीं उठाई, क्योंकि बिटमैप को पढ़ना एक पेज भर के कोड में हो जाता है।

GIF और BMP लगभग हमउम्र हैं — 1987 और 1990 — पर विपरीत रास्ते चुनते हैं। GIF हर पिक्सेल के लिए 256 रंगों की सूची में एक इंडेक्स रखती है, यानी एक बाइट प्रति पिक्सेल, फिर LZW उसे और सिकोड़ता है। यहाँ लिखा गया बिटमैप हर पिक्सेल के लिए नीला, हरा और लाल — तीनों पूरे बाइट में, बिना किसी संपीड़न के रखता है।

आकार का हिसाब पहले से लगाया जा सकता है

इसमें अंदाज़ा लगाने को कुछ नहीं है, बस गुणा है। चौड़ाई को तीन से गुणा कीजिए, नतीजे को चार के गुणज तक पूरा कीजिए, ऊँचाई से गुणा कीजिए और 54 बाइट का हेडर जोड़ दीजिए। 480 गुणा 270 की GIF से 1,440 बाइट प्रति पंक्ति, कुल 388,800 बाइट पिक्सेल के और 388,854 बाइट पूरी फ़ाइल।

यह संख्या तस्वीर की सामग्री से बेपरवाह है — एक सादा लाल आयत भी उतनी ही बड़ी बिटमैप बनाता है जितनी कोई डिथर की हुई तस्वीर। यही अंदाज़ेबाज़ी हार्डवेयर को BMP पसंद कराती है: फ़र्मवेयर सिर्फ़ हेडर पढ़कर अपना बफ़र आवंटित कर सकता है।

पंक्तियाँ नीचे से ऊपर, और हर पंक्ति में पैडिंग

दो चीज़ें ग़लती लगती हैं और नहीं हैं। पंक्तियाँ तस्वीर के सबसे नीचे से शुरू होकर ऊपर की ओर लिखी जाती हैं, और हर पिक्सेल के भीतर क्रम नीला-हरा-लाल है, उलटा नहीं। दोनों बातें असली विनिर्देश में हैं और हर BMP पाठक इन्हें ऐसे ही अपेक्षित मानता है।

तीसरी बात पैडिंग है। हर पंक्ति चार बाइट के गुणज तक भरी जाती है, तो 101 पिक्सेल चौड़ी तस्वीर 303 बाइट पिक्सेल के बाद एक ख़ाली बाइट लेती है — कुल 304 प्रति पंक्ति। जो कोड चौड़ाई को सीधे तीन से गुणा कर पंक्ति मान लेता है, उसकी तस्वीर तिरछी होकर टूटती दिखेगी।

चलती तस्वीर GIF के पहले फ़्रेम पर रुक जाती है

BMP एक ही तस्वीर रखती है। उसमें क्रम, देरी या लूप का कोई खयाल ही नहीं, इसलिए एनिमेटेड GIF यहाँ पहुँचकर अपने पहले फ़्रेम पर टिक जाती है और बाक़ी सब हट जाता है — यह रजिस्ट्री की चेतावनी है, कोई बाद में खुलने वाला आश्चर्य नहीं।

जो उपकरण BMP माँगते हैं उनके लिए यह शायद ही मुश्किल है, क्योंकि जिसे बिटमैप चाहिए उसे परिभाषा से ही एक स्थिर तस्वीर चाहिए। बस यह देख लीजिए कि पहला फ़्रेम वही है जो आप चाहते थे — बहुत सी GIF किसी ख़ाली या शीर्षक वाले फ़्रेम से खुलती हैं।

256 रंग भी फ़ाइल को छोटा नहीं करते

यह उम्मीद रखना ठीक लगता है कि सिर्फ़ 256 रंगों वाली तस्वीर छोटी फ़ाइल बनेगी, और किसी पैलेट-आधारित फ़ॉर्मेट के लिए वह सच होता। BMP का विनिर्देश ऐसा 8-बिट रंग-सारणी वाला संस्करण अनुमति भी देता है, जो GIF से लगभग पूरी तरह मेल खाता।

यह कन्वर्टर वह नहीं लिखता। हर बिटमैप 24-बिट ही निकलती है, तो छह रंगों वाली GIF उतनी ही बाइट लेती है जितनी उसी आकार की फ़ोटो। अगर आपका उपकरण ठीक-ठीक 8-बिट पैलेट वाली BMP माँगता है, यह फ़ाइल उसके काम नहीं आएगी — यह बात उपकरण के मना करने से पहले जान लेना बेहतर है।

पारदर्शी रंग को असली रंग बनना पड़ता है

GIF अपनी पैलेट में एक प्रविष्टि को पारदर्शी नाम दे सकती है। यहाँ लिखी जाने वाली बिटमैप में अल्फ़ा चैनल है ही नहीं — 24 बिट, तीन चैनल, कुछ और बचता नहीं — इसलिए एनकोड होने से पहले उन पिक्सेलों को कोई रंग देना पड़ता है।

पृष्ठभूमि रंग का विकल्प यही तय करता है और तयशुदा रूप से सफ़ेद रहता है। किसी डिवाइस के लिए इसे सोच-समझकर चुनना ज़रूरी है — काली इंटरफ़ेस वाले डिस्प्ले के लिए आइकन काले पर चपटा होना चाहिए, सफ़ेद पर नहीं। जहाँ क्रोमा-की चाहिए, वही सटीक रंग सेट कीजिए।

सिकोड़ने का इकलौता तरीक़ा आकार घटाना है

इस कन्वर्ज़न में गुणवत्ता का कोई पैमाना नहीं है और हो भी नहीं सकता — बिना संपीड़न का मतलब है बिना संपीड़न, यहाँ कुछ भी बदलने को नहीं। इकलौता लीवर अधिकतम चौड़ाई है, जो पिक्सेल लिखे जाने से पहले तस्वीर को छोटा करती है और इसलिए आकार को गुणित रूप से घटाती है।

चौड़ाई आधी करने से बिटमैप चौथाई रह जाती है। छोटे डिस्प्ले के लिए यह सही चाल है — 128 पिक्सेल चौड़े पैनल को 640 पिक्सेल के स्रोत से कुछ हासिल नहीं होता, और यहाँ छोटा करने से डिवाइस को बड़ा बफ़र रखने की ज़रूरत ही नहीं पड़ती।

मेटाडेटा, जिसका GIF के पास वैसे भी कम है

यहाँ हर रास्टर कन्वर्ज़न मेटाडेटा बिना शर्त हटा देता है, पर इस जोड़ी पर उस नियम का काम बहुत कम है। GIF में EXIF ब्लॉक नहीं होता, कैमरा मॉडल नहीं, GPS निर्देशांक नहीं — ज़्यादा से ज़्यादा कोई टिप्पणी या ऐप्लिकेशन एक्सटेंशन बचता है।

बिटमैप फ़ॉर्मेट के पास वैसे भी उसे रखने की जगह नहीं। उसका हेडर आयाम और बिट-गहराई बताता है, बस इतना ही — तो बाहर पिक्सेल और आकार के अलावा कुछ नहीं आता। किसी स्क्रीन-रिकॉर्डर ने टिप्पणी में जो नाम भरा हो, वह साथ नहीं आता।

बिटमैप आपकी अपनी मशीन पर बनती है

GIF को ब्राउज़र की अपनी इमेज सुविधा डिकोड करती है और बिटमैप का हेडर व पिक्सेल पंक्तियाँ उसी टैब में JavaScript लिखता है। कोई सर्वर बीच में नहीं, कोई अपलोड नहीं, कोई खाता नहीं, और टैब बंद होते ही फ़ाइल मिट जाती है।

यह इस जोड़ी पर ख़ासतौर पर मायने रखता है, क्योंकि जो चीज़ें लोग BMP में बदलते हैं वे अक्सर भीतरी होती हैं — किसी नियंत्रण पैनल की तस्वीर, किसी उत्पाद का लेबल, किसी उपकरण की स्प्लैश स्क्रीन। इनमें से किसी को भी बिटमैप बनने के लिए किसी और के सर्वर से गुज़रने की ज़रूरत नहीं।

GIF को BMP में ऐसे बदलें

  1. अपनी GIF फ़ाइल इस पेज पर छोड़ें, या चुनने के लिए दबाएँ।
  2. लक्ष्य के रूप में BMP चुनें। कन्वर्ज़न आपके ब्राउज़र में होता है और फ़ाइल अपलोड नहीं होती।
  3. तैयार BMP फ़ाइल डाउनलोड कर लें।

GIF या BMP: क्या बदलता है

GIF और BMP की तुलना
GIFBMP
पूरा नामGraphics Interchange FormatWindows बिटमैप
फ़ाइल एक्सटेंशन.gif.bmp, .dib
मीडिया टाइपimage/gifimage/bmp
कंप्रेशनबिना नुक़सान — कुछ छोड़ा नहीं जाताबिना कंप्रेशन
पहली बार प्रकाशित19871987
प्रकाशकCompuServeMicrosoft
विनिर्देशGIF89a
लाइसेंसखुला मानकप्रकाशित, मानकीकृत नहीं
आज की स्थितिपुराना, फिर भी हर जगह पढ़ा जाता हैपुराना, फिर भी हर जगह पढ़ा जाता है
बिट डेप्थ88
रंग जो यह दर्ज कर सकता हैइंडेक्स्ड पैलेटRGB, इंडेक्स्ड पैलेट
सबसे बड़ी इमेजहर तरफ़ 65,535 px
ब्राउज़र में खुलता हैहर ब्राउज़रहर ब्राउज़र
इसकी जगह विचारणीयWebP, MP4PNG, TIFF

क्या खो जाता है

BMP में अल्फ़ा चैनल होता ही नहीं। पारदर्शी GIF फ़ाइल बाहर आती है तो वे हिस्से भरे हुए मिलते हैं — सफ़ेद, जब तक आप कुछ और न चुनें — और BMP की कोई सेटिंग उस पारदर्शिता को वापस नहीं ला सकती।

BMP में एक ठहरा हुआ फ़्रेम होता है। चलती हुई GIF फ़ाइल में से पहला फ़्रेम बचता है और बाक़ी छूट जाता है: यह कन्वर्ज़न उसमें से एक तस्वीर निकालता है, हरकत साथ नहीं ले जाता।

नतीजा खोलना

GIMP GIF और BMP — दोनों पढ़ लेता है, इसलिए आप नतीजे को असली फ़ाइल के बग़ल में रखकर देख सकते हैं, बिना दूसरा प्रोग्राम खोले।

फ़ाइल का आकार और गुणवत्ता

BMP सैंपल कच्चे रूप में रखता है, इसलिए फ़ाइल ख़ूब बढ़ जाती है और बदले में कुछ मिलता नहीं। इस दिशा का मतलब सिर्फ़ तब है जब दूसरी तरफ़ का कोई प्रोग्राम GIF लेता ही न हो — और वजह आम तौर पर यही होती भी है।

कौन-सा फ़ॉर्मेट किस काम के लिए है

दोनों का निशाना अलग काम है: GIF का वेब पर, BMP का प्रोग्रामों के बीच डेटा ले जाना पर। इस पर सोचना बनता है, क्योंकि जिस वजह से एक मौजूद है, आम तौर पर उसी वजह से दूसरा असुविधाजनक होता है।

GIF CompuServe का फ़ॉर्मेट है, जो 1987 में आया। यह हर चैनल पर 8 बिट में दर्ज करता है।

BMP Microsoft का है और 1987 से चला आ रहा है। Microsoft Paint, GIMP और IrfanView इस फ़ॉर्मेट को पढ़ लेते है।

GIF से BMP: आम सवाल

क्या मेरी GIF फ़ाइल कहीं अपलोड होती है?

नहीं। यह कन्वर्ज़न पूरी तरह आपके ब्राउज़र में होता है, इसलिए फ़ाइल आपके डिवाइस से बाहर नहीं जाती। आप ख़ुद जाँच सकते हैं: डेवलपर टूल्स का नेटवर्क टैब खोलिए और कुछ बदल कर देखिए। आपको पेज ख़ुद दिखेगा और आँकड़ों तथा विज्ञापन के वे अनुरोध दिखेंगे जिनसे इस सेवा का ख़र्च निकलता है — और एक भी ऐसा अनुरोध नहीं जो आपकी फ़ाइल साथ ले जा रहा हो। इस जोड़ी के पीछे jSquash है, तस्वीरों के संदर्भ कोडेक के WebAssembly संस्करण; आपका ब्राउज़र इसे एक बार उतारता है और फिर सहेज कर रखता है।

क्या GIF को BMP में बदलना मुफ़्त है?

हाँ। न खाता, न वॉटरमार्क, और न कोई रोज़ का कोटा जो ख़त्म हो: यह आपकी अपनी मशीन पर चलता है, इसलिए आप जितनी बार चाहें लौट सकते हैं। ब्राउज़र 100 MB तक की फ़ाइलें सँभालता है, एक बार में 100। jSquash आपकी अपनी मशीन पर उतरता है और वहीं चलता है — इसीलिए उस पर कोई गिनती नहीं है।

GIF को BMP में बदलने पर क्या गुणवत्ता जाती है?

BMP कंप्रेस करता है, इसलिए कुछ डेटा जाता है। तयशुदा सेटिंग पर यह पकड़ में नहीं आता; पक्का करना हो तो गुणवत्ता बढ़ा दीजिए। सिर्फ़ पहला फ़्रेम बदला जाता है: चलती हुई GIF ठहरी हुई तस्वीर बन जाती है।

GIF से BMP जाने पर क्या पारदर्शी पृष्ठभूमि बची रहती है?

BMP में अल्फ़ा चैनल होता ही नहीं। पारदर्शी GIF फ़ाइल बाहर आती है तो वे हिस्से भरे हुए मिलते हैं — सफ़ेद, जब तक आप कुछ और न चुनें — और BMP की कोई सेटिंग उस पारदर्शिता को वापस नहीं ला सकती।

चलती हुई GIF फ़ाइल BMP बनने पर भी चलती रहेगी?

BMP में एक ठहरा हुआ फ़्रेम होता है। चलती हुई GIF फ़ाइल में से पहला फ़्रेम बचता है और बाक़ी छूट जाता है: यह कन्वर्ज़न उसमें से एक तस्वीर निकालता है, हरकत साथ नहीं ले जाता।

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

BMP सैंपल कच्चे रूप में रखता है, इसलिए फ़ाइल ख़ूब बढ़ जाती है और बदले में कुछ मिलता नहीं। इस दिशा का मतलब सिर्फ़ तब है जब दूसरी तरफ़ का कोई प्रोग्राम GIF लेता ही न हो — और वजह आम तौर पर यही होती भी है।

इन फ़ॉर्मेट के बारे में और

ये आँकड़े कहाँ से आए

इस पेज पर GIF और BMP के बारे में जो कहा गया है, वह जाँचा जा सकता है, और ये रहे वे दस्तावेज़ जो उसे तय करते हैं।