आँकड़ों और विज्ञापन के लिए कुकीज़
हम आँकड़ों और विज्ञापन के लिए कुकीज़ इस्तेमाल करते हैं, दोनों Google को जाती हैं। मना करने से आपको दिखने वाली किसी चीज़ में कोई फ़र्क़ नहीं पड़ता।निजता पेज पढ़ें
यहाँ आप SVG को GIF में बदलते हैं, मुफ़्त और बिना खाते के: फ़ाइल ऊपर छोड़िए और कुछ ही सेकंड में नतीजा डाउनलोड के लिए तैयार मिलेगा। कन्वर्ज़न आपके अपने ब्राउज़र के भीतर होता है, इसलिए फ़ाइल कभी अपलोड नहीं होती। यह Windows, macOS और Linux पर वैसे ही चलता है जैसे iPhone और Android पर, और कनेक्शन काट देने पर भी चलता रहता है।
एक बार में 100 फ़ाइलें। फ़ॉर्मेट अलग-अलग हों तो भी चलेगा।
ये एक के बाद एक बदलती हैं और साथ में एक ZIP बनकर उतरती हैं।
SVG से GIF
GIF में पारदर्शिता है ज़रूर, पर सिर्फ़ एक तरह की: रंग-तालिका की एक ही एंट्री को अदृश्य कहा जा सकता है। यहाँ इस्तेमाल होने वाला एनकोडर कभी किसी एंट्री को ऐसा चिह्नित नहीं करता — वह पट्टी बनाता है, उसे लाल-हरे-नीले तिकड़ी के रूप में लिखता है, और तब तक अल्फ़ा के लिए कोई जगह नहीं बचती।
SVG से बना रेंडर जहाँ कुछ बना ही नहीं वहाँ पारदर्शी पिक्सेल छोड़ता है, और पट्टी बनने से पहले हर एक को कुछ ठोस बनना पड़ता है। वे इस पन्ने पर चुने गए पृष्ठभूमि रंग से भरते हैं, जो सफ़ेद से शुरू होता है — यानी बिना पृष्ठभूमि वाला लोगो एक सफ़ेद कार्ड पर बने लोगो जैसा उतरता है।
इस पन्ने पर मौजूद पृष्ठभूमि रंग तय करता है कि खाली हिस्से क्या बनेंगे, और यह बाक़ी सब से पहले पढ़ा जाता है: पहले कैनवस पर भराव रंग बिछता है, फिर रेंडर की गई ड्राइंग उस पर एक ही पास में बिठाई जाती है। इसी क्रम से किनारे साफ़ बचते हैं।
भराव को GIF जहाँ जाएगी वहाँ के रंग से मिलाइए। सफ़ेद पन्ने के लिए कुछ बदलने की ज़रूरत नहीं। रंगीन पैनल के लिए हेक्स कोड टाइप कर दीजिए। जहाँ पृष्ठभूमि बदलती रहती हो, वहाँ ड्राइंग में ही पूरे viewBox भर एक रंगीन आयत जोड़ दीजिए, ताकि फ़ाइल अपनी ही पृष्ठभूमि साथ ले जाए।
SVG का कोई तय आकार नहीं होता, इसलिए बदलाव एक चुनता है: डिफ़ॉल्ट में 1,024 पिक्सेल चौड़ाई, ऊँचाई ड्राइंग के अनुपात से आती है। यह डिफ़ॉल्ट PNG और WebP के लिए ठीक बैठता है; GIF के लिए बहुत बड़ा है, क्योंकि जो जगहें आज भी GIF माँगती हैं — सिग्नेचर, अवतार, फ़ोरम आइकन — अक्सर सौ से तीन सौ पिक्सेल पर काम करती हैं।
स्केल सेटिंग इस्तेमाल कीजिए। 0.2 पर वही ड्राइंग 205 पिक्सेल चौड़ी रेंडर होती है, जो इन जगहों के क़रीब बैठती है, और फ़ाइल क़रीब क्षेत्रफल के अनुपात में सिकुड़ती है।
कमी उतनी बुरी नहीं जितनी संख्या 256 लगती है, कम से कम SVG से आने वाली सपाट कला पर। ठोस भराव एक-एक रंग लेते हैं, रेखाएँ एक और, और एंटी-एलियासिंग हर किनारे पर बीच के कुछ रंग जोड़ती है।
एक नापी गई 140 बाइट की SVG पर क्वांटाइज़र ने इतना छोटा पट्टा बनाया कि एनकोडर ने सोलह एंट्री की रंग-तालिका लिखी, और पूरी 1024 गुणा 1024 GIF 7,844 बाइट की बनी। सपाट कला इस फ़ॉर्मेट में बहुत अच्छे से सिमटती है, क्योंकि GIF एक जैसी एंट्री की लगातार पंक्तियाँ बचाता है, और ड्राइंग ज़्यादातर ऐसी पंक्तियों से बनी होती है।
ग्रेडिएंट यही मामला है। बड़े इलाक़े में फैला रैखिक या रेडियल भराव सैकड़ों अलग रंग बनाता है, पट्टी उन्हें रख नहीं सकती, इसलिए क्वांटाइज़र प्रतिनिधि चुनता है और नतीजा नरम बहाव की जगह साफ़ पट्टियाँ दिखाता है।
नरम परछाईं और धुँधले किनारे भी यही करते हैं। अगर ड्राइंग में इनमें से कुछ है और मंज़िल GIF ही चाहती है, तो छोटा रेंडर कीजिए — कम पिक्सेल यानी कम अलग-अलग रंगों का मिश्रण और कम दिखने वाली पट्टीबंदी।
SVG चल सकती है — SMIL तत्व, CSS एनिमेशन, स्क्रिप्ट से चलने वाला हिस्सा। GIF भी चल सकती है, इसलिए दोनों को जोड़ लेना आसान लगता है। पर यहाँ ऐसा नहीं होता: रेंडरर ड्राइंग की शुरुआती अवस्था का एक स्थिर फ़्रेम बनाता है, और एनकोडर फ़ाइल में ठीक एक ही फ़्रेम लिखता है।
तो चलता हुआ लोगो अपनी पहली मुद्रा में उतरता है, और कोई सेटिंग यह नहीं बदलती। चलती SVG से चलती GIF बनाना बिलकुल अलग काम है — उसके लिए एनिमेशन को चलाकर फ़्रेम-दर-फ़्रेम पकड़ना पड़ता है, जो यह स्थिर-चित्र रेंडरर नहीं करता।
GIF 1987 से हर जगह पढ़ी जाती रही है, और यही अकेली बात मायने रखती है जिसने यह शर्त लिखी। मेल क्लाइंट, फ़ोरम इंजन, इंट्रानेट पोर्टल और दो-हज़ार-चार से पहले लिखा गया एंटरप्राइज़ सॉफ़्टवेयर — सब इसे पढ़ लेते हैं।
वहीं शर्त का बाक़ी हिस्सा भी पढ़ लीजिए। जो शर्त GIF का नाम लेने जितनी पुरानी है, वह अक्सर अधिकतम पिक्सेल आकार और अधिकतम बाइट संख्या भी बाँधती है, और फ़ॉर्मेट कभी अकेली रुकावट नहीं होता।
समझौता मानने से पहले एक कोशिश इसकी बनती है। बहुत-सी वे प्रणालियाँ जो मदद के पाठ में GIF लिखती हैं, अपने वैलिडेशन कोड में PNG भी स्वीकार करती हैं, क्योंकि पाठ कोड से पहले लिखा गया था। अगर चल जाए, तो पारदर्शिता पूरी बचती है और रंग-कमी होती ही नहीं।
जहाँ GIF सच में ज़रूरी हो, वहाँ उसे लीजिए और भराव रंग सोच-समझकर चुनिए, डिफ़ॉल्ट को बिना देखे नहीं। नतीजा तब एक तय की गई तस्वीर होती है, संयोग से बनी नहीं।
फ़ोल्डर छोड़िए। हर SVG एक ही स्केल पर रेंडर और अलग-अलग एनकोड होती है, सब कुछ एक ZIP में लौटता है। पट्टी हर तस्वीर के लिए अलग बनती है, पूरे सेट पर साझा नहीं — इसलिए एक ही ब्रांड रंग दो फ़ाइलों में थोड़ी अलग एंट्री पर बैठ सकता है, दिखने में अदृश्य फ़र्क़।
हर फ़ाइल अपनी अलग सेटिंग भी रखती है, तो पृष्ठभूमि रंग एक बार की जगह हर पंक्ति के लिए चुना जाता है। एक ही टेम्पलेट में जाने वाले सेट के लिए हर एक पर वही मान लगाना शुरुआत में करने लायक़ है, न कि हर सिग्नेचर पर बाद में एक-एक करके।
| SVG | GIF | |
|---|---|---|
| पूरा नाम | Scalable Vector Graphics | Graphics Interchange Format |
| फ़ाइल एक्सटेंशन | .svg | .gif |
| मीडिया टाइप | image/svg+xml | image/gif |
| कंप्रेशन | बिना कंप्रेशन | बिना नुक़सान — कुछ छोड़ा नहीं जाता |
| पहली बार प्रकाशित | 2001 | 1987 |
| प्रकाशक | W3C | CompuServe |
| विनिर्देश | SVG 1.1 | GIF89a |
| लाइसेंस | खुला मानक | खुला मानक |
| आज की स्थिति | मौजूदा | पुराना, फिर भी हर जगह पढ़ा जाता है |
| बिट डेप्थ | — | 8 |
| रंग जो यह दर्ज कर सकता है | RGB | इंडेक्स्ड पैलेट |
| सबसे बड़ी इमेज | — | हर तरफ़ 65,535 px |
| ब्राउज़र में खुलता है | हर ब्राउज़र | हर ब्राउज़र |
| इसकी जगह विचारणीय | PNG, PDF | WebP, MP4 |
GIF में अल्फ़ा चैनल होता ही नहीं। पारदर्शी SVG फ़ाइल बाहर आती है तो वे हिस्से भरे हुए मिलते हैं — सफ़ेद, जब तक आप कुछ और न चुनें — और GIF की कोई सेटिंग उस पारदर्शिता को वापस नहीं ला सकती।
SVG आकृतियों का वर्णन करता है और GIF बिंदु सँभालता है। नतीजा उसी नाप पर साफ़ है जिस पर वह बना, उससे बड़े पर नहीं: बाद में बढ़ाने पर बीच के बिंदु सिर्फ़ गढ़े जा सकते हैं — इसीलिए यहाँ निर्यात की नाप बाक़ी ज़्यादातर कन्वर्ज़न से ज़्यादा मायने रखती है।
GIF में एक ठहरा हुआ फ़्रेम होता है। चलती हुई SVG फ़ाइल में से पहला फ़्रेम बचता है और बाक़ी छूट जाता है: यह कन्वर्ज़न उसमें से एक तस्वीर निकालता है, हरकत साथ नहीं ले जाता।
GIF हर तस्वीर में ज़्यादा से ज़्यादा 256 रंग रखता है। इसमें फ़ोटो एक रंग-पट्टी तक घटा दी जाती है, और आसमान पर पट्टियाँ इसीलिए दिखती हैं। यह गुणवत्ता की सेटिंग नहीं है, यह फ़ॉर्मेट है।
दोनों तरफ़ के प्रोग्राम अलग हैं: SVG फ़ाइल Inkscape, Adobe Illustrator और Figma में खुलती है और GIF फ़ाइल GIMP, Adobe Photoshop और ImageMagick में — यानी नतीजा जिसके पास जाएगा, उसे दूसरी सूची में से कोई प्रोग्राम चाहिए होगा।
GIF उन्हीं सैंपल को क़रीब आधी जगह में बाँध देता है। कुछ जाता नहीं — खोलने पर SVG फ़ाइल बिट-दर-बिट वापस मिलती है — और इसी से यह उस हर चीज़ के लिए बेहतर जगह बन जाता है जिसे आप सँभालकर रखना चाहते हैं।
SVG W3C का फ़ॉर्मेट है, जो 2001 में आया। यह SVG 1.1 में तय किया गया है, और अगर फ़ाइल को उस औज़ार से ज़्यादा जीना है जिसने उसे लिखा, तो यह बात क़ीमती है।
GIF CompuServe का है और 1987 से चला आ रहा है, और GIF89a में तय किया गया है। GIMP, Adobe Photoshop और ImageMagick इस फ़ॉर्मेट को पढ़ लेते है।
नहीं। यह कन्वर्ज़न पूरी तरह आपके ब्राउज़र में होता है, इसलिए फ़ाइल आपके डिवाइस से बाहर नहीं जाती। आप ख़ुद जाँच सकते हैं: डेवलपर टूल्स का नेटवर्क टैब खोलिए और कुछ बदल कर देखिए। आपको पेज ख़ुद दिखेगा और आँकड़ों तथा विज्ञापन के वे अनुरोध दिखेंगे जिनसे इस सेवा का ख़र्च निकलता है — और एक भी ऐसा अनुरोध नहीं जो आपकी फ़ाइल साथ ले जा रहा हो। इस जोड़ी के पीछे resvg है, Rust में लिखा एक सख़्त SVG रेंडरर; आपका ब्राउज़र इसे एक बार उतारता है और फिर सहेज कर रखता है।
हाँ। न खाता, न वॉटरमार्क, और न कोई रोज़ का कोटा जो ख़त्म हो: यह आपकी अपनी मशीन पर चलता है, इसलिए आप जितनी बार चाहें लौट सकते हैं। ब्राउज़र 100 MB तक की फ़ाइलें सँभालता है, एक बार में 100। resvg आपकी अपनी मशीन पर उतरता है और वहीं चलता है — इसीलिए उस पर कोई गिनती नहीं है।
SVG और GIF सामग्री का वर्णन बुनियादी तौर पर अलग-अलग तरीक़ों से करते हैं। इसलिए यह कन्वर्ज़न नक़ल नहीं, पुनर्निर्माण है: ईमानदार, पर बाइट-दर-बाइट एक जैसा नहीं। लिखावट उन्हीं फ़ॉन्ट से बनाई जाती है जो फ़ाइल के अंदर हैं; बाक़ी के लिए कोई विकल्प आ जाता है।
GIF में अल्फ़ा चैनल होता ही नहीं। पारदर्शी SVG फ़ाइल बाहर आती है तो वे हिस्से भरे हुए मिलते हैं — सफ़ेद, जब तक आप कुछ और न चुनें — और GIF की कोई सेटिंग उस पारदर्शिता को वापस नहीं ला सकती।
SVG आकृतियों का वर्णन करता है और GIF बिंदु सँभालता है। नतीजा उसी नाप पर साफ़ है जिस पर वह बना, उससे बड़े पर नहीं: बाद में बढ़ाने पर बीच के बिंदु सिर्फ़ गढ़े जा सकते हैं — इसीलिए यहाँ निर्यात की नाप बाक़ी ज़्यादातर कन्वर्ज़न से ज़्यादा मायने रखती है।
GIF में एक ठहरा हुआ फ़्रेम होता है। चलती हुई SVG फ़ाइल में से पहला फ़्रेम बचता है और बाक़ी छूट जाता है: यह कन्वर्ज़न उसमें से एक तस्वीर निकालता है, हरकत साथ नहीं ले जाता।
इस पेज पर SVG और GIF के बारे में जो कहा गया है, वह जाँचा जा सकता है, और ये रहे वे दस्तावेज़ जो उसे तय करते हैं।