Base64 से SVG डिकोडर

Base64 में एनकोड किया गया SVG पेस्ट करें, उसका पूर्वावलोकन देखें और मूल वेक्टर फ़ाइल सहेजें। आप इसे PNG, JPG या WebP में रास्टराइज़ भी कर सकते हैं, या किसी बिटमैप इमेज को SVG रैपर के अंदर रख सकते हैं।

पूरी तरह आपके ब्राउज़र में चलता है। कुछ भी अपलोड नहीं होता।

उपयोग कैसे करें

  1. Base64 स्ट्रिंग या data:image/svg+xml;base64 URI पेस्ट करें।
  2. पूर्वावलोकन और पहचाना गया फ़ॉर्मैट व आयाम जाँचें।
  3. डाउनलोड फ़ॉर्मैट SVG ही रहने दें। SVG इनपुट होने पर फ़ाइल SVG टेक्स्ट के रूप में सहेजी जाती है।
  4. .svg फ़ाइल डाउनलोड करें, और अगर आप मार्कअप पढ़ना या बदलना चाहते हैं, तो उसे किसी एडिटर में खोलें।

Base64 के अंदर SVG पहचानना

दूसरे इमेज फ़ॉर्मैट के विपरीत, SVG सादा XML टेक्स्ट है। <svg से शुरू होने वाली फ़ाइल का Base64 PHN2Zy से शुरू होता है, और XML डिक्लेरेशन (<?xml) से शुरू होने वाली फ़ाइल का PD94bWwg से। Base64 SVG अक्सर CSS बैकग्राउंड इमेज, आइकन सेट, डिज़ाइन टूल के एक्सपोर्ट और ईमेल टेम्पलेट में मिलते हैं। MIME टाइप image/svg+xml है।

कई SVG data URI असल में Base64 होते ही नहीं, बल्कि परसेंट-एनकोड किया गया टेक्स्ट होते हैं, जैसे data:image/svg+xml,%3Csvg...। यह टूल Base64 की अपेक्षा करता है, इसलिए ऐसे URI को Data URI जनरेटर से पार्स करें।

SVG कोड पढ़ना

पूर्वावलोकन दिखाता है कि ग्राफ़िक कैसा रेंडर होता है, लेकिन अक्सर दिलचस्प हिस्सा मार्कअप होता है: पाथ डेटा, रंग, viewBox या एम्बेड किए गए फ़ॉन्ट। फ़ाइल को “मूल फ़ाइल” या SVG के रूप में डाउनलोड करके किसी भी टेक्स्ट एडिटर में खोलें, या XML को तुरंत टेक्स्ट के रूप में देखने के लिए वही Base64 Base64 डिकोड में पेस्ट करें।

रास्टर से SVG केवल रैपर है, वेक्टराइज़ेशन नहीं

अगर Base64 डेटा PNG, JPEG या कोई अन्य बिटमैप है, तो SVG चुनने पर ऐसी SVG फ़ाइल बनती है जिसमें मूल पिक्सेल एक <image> एलिमेंट के अंदर होते हैं। यह तब काम आता है जब कोई टूल केवल SVG फ़ाइलें स्वीकार करता है, लेकिन यह तस्वीर को ट्रेस करके आकृतियों में नहीं बदलता: बड़ा करने पर इमेज अब भी धुंधली होती है, और फ़ाइल बिटमैप से बड़ी होती है, क्योंकि पिक्सेल उसके अंदर Base64 के रूप में रखे जाते हैं। असली वेक्टर पाथ के लिए Potrace या Inkscape के Trace Bitmap फ़ीचर जैसे ट्रेसिंग सॉफ़्टवेयर का उपयोग करें।

अविश्वसनीय SVG को संभालना

SVG में <script> एलिमेंट, इवेंट हैंडलर एट्रिब्यूट और बाहरी संसाधनों के लिंक हो सकते हैं। जब SVG को इमेज के रूप में, यानी <img> टैग या CSS बैकग्राउंड से दिखाया जाता है, तो ब्राउज़र इन सबको ब्लॉक कर देते हैं। लेकिन जब फ़ाइल सीधे ब्राउज़र टैब में खोली जाती है या उसका मार्कअप किसी पेज में इनलाइन पेस्ट किया जाता है, तो स्क्रिप्ट चल सकती हैं और बाहरी संसाधन लोड हो सकते हैं। अनजान स्रोतों से आए SVG को इस तरह इस्तेमाल करने से पहले उसकी समीक्षा करें या उसे सैनिटाइज़ करें।

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

क्या यह PNG को असली वेक्टर SVG में बदल सकता है?

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

मेरा SVG data URI डिकोड क्यों नहीं होता?
जाँचें कि उसमें ;base64, है या नहीं। अगर नहीं है, तो SVG परसेंट-एनकोड किया गया या सादा टेक्स्ट है और Base64 नहीं है। Data URI जनरेटर इसे पार्स कर सकता है।
क्या अनजान स्रोत से आए SVG को डिकोड करना सुरक्षित है?

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

SVG को PNG में बदलने के बाद फ़ॉन्ट या लिंक की गई इमेज गायब क्यों हैं?

SVG को रास्टराइज़ करने के लिए ब्राउज़र उसे इमेज के रूप में लोड करता है, और इस मोड में SVG बाहरी फ़ाइलें नहीं ला सकता। वेब फ़ॉन्ट और लिंक की गई तस्वीरें छोड़ दी जाती हैं और उनकी जगह डिफ़ॉल्ट फ़ॉन्ट इस्तेमाल होते हैं। SVG को आत्मनिर्भर बनाने के लिए फ़ॉन्ट और इमेज उसी में एम्बेड करें।