SVG ऑप्टिमाइज़र

SVG कोड साफ़ करें और ग्राफ़िक बदले बिना आकार घटाएँ।

SVG कोड पेस्ट करें, फिर ऑप्टिमाइज़ करें।

आपका SVG कोड ब्राउज़र में ऑप्टिमाइज़ होता है। BroBroGo पर कुछ अपलोड नहीं होता।

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

यह क्या हटाता है?

यह कमेंट, मेटाडेटा, एडिटर नेमस्पेस, अतिरिक्त एट्रिब्यूट स्पेसिंग, अप्रयुक्त नेमस्पेस और बराबर दिखने वाले छोटे रंग हटाता या छोटा करता है। viewBox, ID, लेबल और ज्यामिति सुरक्षित रहती है।

क्या हर SVG ऑप्टिमाइज़ हो सकता है?

सामान्य इनलाइन SVG कोड सीधे चल जाता है। डॉक्यूमेंट टाइप या कस्टम एंटिटी घोषणा वाले SVG रोके जाते हैं, क्योंकि वे पार्सिंग को असुरक्षित बना सकते हैं। वह घोषणा हटाकर फिर कोशिश करें।

क्या ग्राफ़िक का रूप बदलेगा?

यह path को फिर से लिखने, ID का नाम बदलने, viewBox हटाने और दशमलव परिशुद्धता की गोलाई से बचता है। अगर आपका डिज़ाइन वर्कफ़्लो कमेंट या मेटाडेटा पर निर्भर है, तो मूल SVG की कॉपी रखें।

SVG फ़ाइलों की संरचना और वेब प्रदर्शन पर उनका प्रभाव

स्केलेबल वेक्टर ग्राफिक्स (SVG) आधुनिक वेब डिज़ाइन और डेवलपमेंट का एक महत्वपूर्ण हिस्सा हैं। रास्टर इमेज फॉर्मेट (जैसे PNG या JPEG) के विपरीत, SVG फ़ाइलें XML-आधारित कोड का उपयोग करके ज्यामितीय आकृतियों, पथों और रंगों को परिभाषित करती हैं। इसका मतलब है कि वे बिना अपनी स्पष्टता खोए किसी भी स्क्रीन रिज़ॉल्यूशन पर स्केल हो सकती हैं।

वेबसाइट की लोडिंग स्पीड और उपयोगकर्ता अनुभव (UX) सीधे तौर पर फ़ाइल के आकार से जुड़े होते हैं। जब आप किसी डिज़ाइन सॉफ़्टवेयर से SVG निर्यात करते हैं, तो उसमें बहुत सारा ऐसा कोड शामिल हो जाता है जो ब्राउज़र में ग्राफ़िक को रेंडर करने के लिए आवश्यक नहीं होता है। यह अतिरिक्त कोड फ़ाइल का आकार बढ़ाता है, जिससे वेब पेज लोड होने में अधिक समय लगता है। इनलाइन SVG (जो सीधे HTML कोड के अंदर लिखे जाते हैं) और बाहरी SVG फ़ाइलों (जो <img> टैग या CSS के माध्यम से लोड की जाती हैं) दोनों के लिए कोड का छोटा होना आवश्यक है। इनलाइन SVG का आकार छोटा रखने से सीधे HTML का आकार कम होता है, जिससे ब्राउज़र उसे तेज़ी से पार्स कर पाता है।

सुरक्षित और दोषरहित (Lossless) ऑप्टिमाइज़ेशन

ग्राफ़िक्स के संदर्भ में "दोषरहित" या लॉसलेस ऑप्टिमाइज़ेशन का अर्थ है कि विज़ुअल गुणवत्ता या मूल संरचना को नुकसान पहुँचाए बिना फ़ाइल का आकार कम करना। यह टूल सुरक्षित सफ़ाई नियमों का पालन करता है ताकि आपका ग्राफ़िक बिल्कुल वैसा ही दिखे जैसा वह पहले था।

क्या हटाया जाता है

यह ऑप्टिमाइज़र SVG कोड से निम्नलिखित अनावश्यक घटकों को हटा देता है:

  • कमेंट और मेटाडेटा: सॉफ़्टवेयर द्वारा जोड़े गए क्रिएटर कमेंट और मेटाडेटा।
  • एडिटर नेमस्पेस: एडोब इलस्ट्रेटर या इंकस्केप जैसे टूल द्वारा जोड़े गए विशिष्ट एक्सटेंशन और नेमस्पेस।
  • अतिरिक्त एट्रिब्यूट स्पेसिंग: कोड के अंदर मौजूद अनावश्यक खाली स्थान (spaces)।
  • अप्रयुक्त नेमस्पेस: वे नेमस्पेस घोषणाएँ जिनका उपयोग कोड में कहीं नहीं किया गया है।
  • छोटे समकक्ष रंग: रंगों के कोड को उनके सबसे छोटे समकक्ष रूप में बदलना (जैसे #ffffff को #fff में बदलना)।

क्या सुरक्षित रखा जाता है

सुरक्षा सुनिश्चित करने के लिए, यह टूल निम्नलिखित तत्वों में कोई बदलाव नहीं करता है:

  • viewBox: यह ग्राफ़िक के अनुपात और स्केलिंग को बनाए रखने के लिए आवश्यक है, इसलिए इसे हटाया नहीं जाता।
  • ID और लेबल: तत्वों की पहचान और उनकी सुगमता (accessibility) को बनाए रखा जाता है।
  • ज्यामिति और पाथ: यह टूल पाथ को फिर से लिखने (path rewrites) या दशमलव परिशुद्धता की गोलाई (precision rounding) से बचता है ताकि आकृतियों के किनारे ख़राब न हों।

XML एंटिटी और सुरक्षा निहितार्थ

वेब अनुप्रयोगों में XML डेटा को पार्स करते समय सुरक्षा एक महत्वपूर्ण पहलू है। SVG वास्तव में एक XML दस्तावेज़ है, जिसका अर्थ है कि यह डॉक्यूमेंट टाइप डेफिनिशन (DTD) या कस्टम एंटिटी घोषणाओं का समर्थन कर सकता है। हालाँकि, ये घोषणाएँ सुरक्षा जोखिम पैदा कर सकती हैं।

सुरक्षा को ध्यान में रखते हुए, यह टूल उन SVG फ़ाइलों को ब्लॉक कर देता है जिनमें डॉक्यूमेंट टाइप या कस्टम एंटिटी घोषणाएँ होती हैं। यदि इनपुट में ऐसी घोषणाएँ पाई जाती हैं, तो पार्सिंग को सुरक्षित रखने के लिए ऑप्टिमाइज़ेशन रोक दिया जाता है। उपयोगकर्ताओं को सलाह दी जाती है कि वे इस टूल का उपयोग करने से पहले अपने SVG से ऐसी घोषणाओं को हटा दें।

टूल के नियम, सीमाएँ और त्रुटि संदेश

यह ऑप्टिमाइज़र पूरी तरह से आपके वेब ब्राउज़र में काम करता है। आपका SVG कोड स्थानीय रूप से प्रोसेस किया जाता है और BroBroGo पर कुछ अपलोड नहीं होता है।

टूल का उपयोग करते समय निम्नलिखित नियमों और सीमाओं का ध्यान रखें:

  • खाली इनपुट: यदि आप बिना कोई कोड डाले ऑप्टिमाइज़ करने का प्रयास करेंगे, तो "पहले SVG कोड पेस्ट करें।" संदेश दिखाई देगा।
  • अमान्य SVG: यदि इनपुट में कोई वैध SVG तत्व नहीं मिलता है, तो टूल "<svg> एलिमेंट नहीं मिला।" प्रदर्शित करेगा।
  • ब्लॉक की गई फ़ाइलें: यदि SVG में डॉक्यूमेंट टाइप या कस्टम एंटिटी है, तो "इस SVG में डॉक्यूमेंट टाइप या कस्टम एंटिटी है। ऑप्टिमाइज़ करने से पहले उसे हटाएँ।" त्रुटि दिखाई देगी।
  • आकार की सीमा: SVG को एक निश्चित वर्ण सीमा के भीतर होना चाहिए। यदि फ़ाइल बहुत बड़ी है, तो "यह SVG बहुत बड़ा है। इसे {max} वर्ण से कम रखें।" संदेश दिखाई देगा।
  • समय सीमा (Timeout): यदि ऑप्टिमाइज़ेशन प्रक्रिया में 15 सेकंड से अधिक का समय लगता है, तो प्रक्रिया स्वतः रुक जाएगी और "इसमें बहुत समय लग रहा था, इसलिए रोक दिया गया — छोटा SVG आज़माएँ।" दिखाई देगा।
  • कोई बचत नहीं: यदि सुरक्षित सफ़ाई के बाद आकार में कोई कमी नहीं होती है, तो टूल "ऑप्टिमाइज़ हो गया। सुरक्षित सफ़ाई से आकार कम नहीं हुआ।" संदेश दिखाएगा।
  • प्रक्रिया रद्द करना: इनपुट को साफ़ करने या बदलने पर चल रही ऑप्टिमाइज़ेशन प्रक्रिया तुरंत बंद हो जाती है।

सफल ऑप्टिमाइज़ेशन के बाद, टूल मूल आकार, आउटपुट आकार, और कुल बचत को बाइट्स और प्रतिशत में दिखाता है, जैसे: "ऑप्टिमाइज़ हो गया — {pct}% छोटा ({saved} बचा)।"।

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

यह क्या हटाता है?
यह कमेंट, मेटाडेटा, एडिटर नेमस्पेस, अतिरिक्त एट्रिब्यूट स्पेसिंग, अप्रयुक्त नेमस्पेस और बराबर दिखने वाले छोटे रंग हटाता या छोटा करता है। viewBox, ID, लेबल और ज्यामिति सुरक्षित रहती है।

क्या हर SVG ऑप्टिमाइज़ हो सकता है?
सामान्य इनलाइन SVG कोड सीधे चल जाता है। डॉक्यूमेंट टाइप या कस्टम एंटिटी घोषणा वाले SVG रोके जाते हैं, क्योंकि वे पार्सिंग को असुरक्षित बना सकते हैं। वह घोषणा हटाकर फिर कोशिश करें।

क्या ग्राफ़िक का रूप बदलेगा?
यह path को फिर से लिखने, ID का नाम बदलने, viewBox हटाने और दशमलव परिशुद्धता की गोलाई से बचता है। अगर आपका डिज़ाइन वर्कफ़्लो कमेंट या मेटाडेटा पर निर्भर है, तो मूल SVG की कॉपी रखें।

क्या मेरा डेटा सुरक्षित है?
आपका SVG कोड ब्राउज़र में ऑप्टिमाइज़ होता है। BroBroGo पर कुछ अपलोड नहीं होता, जिससे आपकी फ़ाइलों की गोपनीयता बनी रहती है।