लेखक: Irene Kim7 मिनट का पठन

आपके ऑटो-ट्रेस्ड SVG में इतने ज़्यादा नोड क्यों हैं (और इसे कैसे ठीक करें)

ऑटो-ट्रेस्ड SVG अक्सर सैकड़ों गैर-ज़रूरी एंकर पॉइंट से भर जाते हैं, जिससे उन्हें एडिट करना मुश्किल और काटना धीमा हो जाता है। जानिए ऐसा क्यों होता है — और साफ़ SVG कैसे पाएँ।

इस पेज पर

आपने किसी PNG को SVG में ट्रेस किया, एडिटिंग शुरू करने के लिए उसे खोला — और देखा कि पाथ एंकर पॉइंट से दबा हुआ है। सैकड़ों पॉइंट, उन कर्व्स के साथ जमा हुए जहाँ पाँच या छह पॉइंट काफ़ी होने चाहिए थे। हर बार जब आप किसी शेप को थोड़ा सा सरकाने की कोशिश करते हैं, तो आपको ऐसे दर्जन भर हैंडल से जूझना पड़ता है जिनकी आपको ज़रूरत ही नहीं थी।

अगर यह जाना-पहचाना लग रहा है, तो आपका वेक्टराइज़र खराब नहीं है। वह वही कर रहा है जो ज़्यादातर ऑटो-ट्रेसर करते हैं: शेप ड्रॉ करने के बजाय पिक्सेल को उतारना। ऐसा क्यों होता है, यह आपकी गति को आपकी उम्मीद से ज़्यादा क्यों धीमा करता है, और शुरुआत से ही सच में साफ़ वेक्टर कैसे पाएँ — यह सब यहाँ है।

522 नोड बनाम 59 नोड
एक ही उल्लू इलस्ट्रेशन को दो तरीकों से वेक्टराइज़ किया गया: बाईं ओर 522 एंकर पॉइंट, दाईं ओर 59
वही artwork, दो तरीकों से वेक्टराइज़ किया गया। बाईं ओर: 522 नोड वाला सामान्य ऑटो-ट्रेस। दाईं ओर: PerfectVector में 59 — वही उल्लू, बहुत कम अव्यवस्था के साथ।

"बहुत ज़्यादा नोड" का असल मतलब

SVG में हर पाथ एंकर पॉइंट (जिन्हें नोड भी कहा जाता है) से बनता है, जो कर्व सेगमेंट से जुड़े होते हैं। हर एंकर के साथ Bézier हैंडल की एक जोड़ी होती है, जो उसके दोनों ओर लाइन को मोड़ती है। सही जगह रखे गए कुछ एंकर एक लंबे, स्मूद कर्व को बिल्कुल सही तरीके से बता सकते हैं — वेक्टर ग्राफ़िक्स का पूरा मतलब ही यही है।

समस्या तब शुरू होती है जब शेप की ज़रूरत से कहीं ज़्यादा एंकर होते हैं। जिस कर्व को एक designer पाँच पॉइंट से बनाता, वह पचास पॉइंट वाला बन जाता है। एक नज़र में इमेज फिर भी ठीक दिखती है, लेकिन अंदर का पाथ उलझा हुआ होता है।

आप शायद node bloat देख रहे हैं अगर:

  • किसी साधारण कर्व में हर कुछ इंच पर नहीं, बल्कि हर कुछ पिक्सेल पर एंकर पॉइंट हैं।
  • एक शेप चुनने पर जहाँ कुछ ही पॉइंट दिखने चाहिए थे, वहाँ दर्जनों पॉइंट चमक उठते हैं।
  • artwork जितना सरल है, उसके हिसाब से फ़ाइल चौंकाने वाली बड़ी है।

ऑटो-ट्रेसर नोड क्यों बढ़ा देते हैं

ज़्यादातर ट्रेसिंग टूल — Illustrator का Image Trace, और कई मुफ़्त ऑनलाइन कन्वर्टर के पीछे इस्तेमाल होने वाले potrace-आधारित इंजन — आपकी रास्टर इमेज में रंगों की सीमा को follow करके उसके साथ एंकर पॉइंट डालते हैं।

पेच यह है कि वह सीमा कहाँ बैठती है। आपके PNG में anti-aliasing होती है: स्क्रीन पर किनारों को स्मूद दिखाने वाले मुलायम, आधे-पारदर्शी पिक्सेल। ट्रेसर को यह मुलायम किनारा थोड़ी डगमगाती हुई लाइन जैसा दिखता है, इसलिए वह हर डगमगाहट को follow करने के लिए पॉइंट जोड़ता है। वह यह नहीं पूछ रहा होता कि "यह arc है या सीधा segment?" — वह पिक्सेल contour को, jitter सहित, उतार रहा होता है। कोई टूल यह कितनी आक्रामकता से करता है, इसमें बहुत फ़र्क होता है — यहाँ देखें कि मुख्य AI इमेज वेक्टराइज़र कैसे compare करते हैं

आप इसे पाथ डेटा में भी देख सकते हैं। उस उल्लू के एक ear tuft को ट्रेस करने पर और साफ़ तरीके से ड्रॉ करने पर वह मोटे तौर पर ऐसा दिखता है:

<!-- Auto-traced: one ear tuft, 40+ points -->
<path d="M312.4,98.1 C313.0,97.8 313.9,97.2 314.6,96.9 C315.2,96.7
316.1,96.4 316.8,96.2 C317.4,96.0 318.3,95.7 319.0,95.5 ...(many more) Z"/>
 
<!-- Clean: the same tuft, 6 points -->
<path d="M312,98 C320,70 360,68 372,96 C378,112 340,140 312,98 Z"/>

वही कर्व। एक हर पिक्सेल की नकल है; दूसरा एक शेप है।

यह आपको धीमा क्यों करता है

फूला हुआ पाथ editor में सिर्फ़ अस्त-व्यस्त नहीं दिखता — वह आपको तीन ठोस तरीकों से महँगा पड़ता है।

ऑटो-ट्रेस्ड (सामान्य)साफ़ वेक्टर
एंकर पॉइंटहर शेप में सैकड़ोंकुछ दर्जन
एडिटिंगहर बदलाव पर हैंडल से लड़ाईसीधे reshape करें
फ़ाइल साइज़भारी, load होने में धीमाcompact
cutting machinesअटक-अटक कर चलना, rough cuts, लंबा cut timeस्मूद, तेज़ cuts

डिज़ाइन टूल्स में

Illustrator या Figma में, हर अतिरिक्त एंकर ऐसी चीज़ है जिसके आसपास आपको select करना, बचना, या असली बदलाव करने से पहले cleanup करना पड़ता है। साफ़ कर्व को reshape करने में एक या दो पॉइंट लगते हैं। उतारे गए कर्व को reshape करने का मतलब है पूरे cluster से जूझना — और उसे स्मूद बनाए रखने के लिए अलग मेहनत।

Illustrator में selected
Adobe Illustrator में चुना गया एक logo और COMPANY NAME wordmark, जिसके पाथ एंकर पॉइंट से भरे हुए हैं
Illustrator में खोला गया एक bloated trace। artwork select करते ही पाथ एंकर से भरकर चमक उठते हैं — lettering में सबसे ज़्यादा — और साफ़ edit करने के लिए आपको हर एक हैंडल से बचकर काम करना पड़ता है।

cutting machines पर

यहीं यह सबसे ज़्यादा चुभता है। Cricut, Silhouette, और laser cutters पाथ को सचमुच follow करते हैं। बहुत ज़्यादा नोड का मतलब है कि मशीन हर micro-segment पर अटक-अटक कर चलेगी: rougher cuts, लंबा cut time, और material के फटने की ज़्यादा संभावना। साफ़ पाथ आसानी से कटता है। अगर आपकी फ़ाइल laser के लिए जा रही है, तो उसे laser-ready SVG में convert करें और अटकने की समस्या पूरी तरह छोड़ दें।

साफ़ नोड कैसे पाएँ

बाहर निकलने के तीन रास्ते हैं, मोटे तौर पर इस क्रम में कि वे आपकी कितनी परेशानी बचाते हैं:

  1. बाद में simplify करें। Illustrator का Object → Path → Simplify एंकर पॉइंट घटा सकता है। यह मदद करता है, लेकिन यह lossy है — यह पाथ का अनुमान लगाता है, जिससे कोने नरम हो सकते हैं और शेप बिगड़ सकती है। साथ ही, आप फिर भी शुरुआत एक bloated trace से ही कर रहे होते हैं।
  2. Trace detail कम करें। ज़्यादातर tracer complexity घटाने देते हैं, लेकिन यह blunt instrument है: नोड काटने लायक कम करें, और आप वे details खोने लगते हैं जो आपको चाहिए थीं।
  3. साफ़ शुरुआत करें। असली समाधान है कि शुरुआत में ही ऐसे टूल से वेक्टराइज़ करें जो साफ़ पाथ output करे, ताकि cleanup करने को कुछ बचे ही नहीं।

यही आख़िरी बात PerfectVector बनाने की पूरी वजह है। पिक्सेल boundary को उतारने के बजाय, इसका model असली design files पर train किया गया था — जहाँ इंसान पहले ही तय कर चुका था कि एंकर पॉइंट कहाँ होने चाहिए और कौन-से segments एक कर्व हैं, तीन नहीं। Output वही समझ दिखाता है: स्मूद Bézier कर्व्स, anti-aliasing handled, और ऐसा node count जिसे देखकर लगता है कि किसी designer ने इसे ड्रॉ किया होगा।

और यह सिर्फ़ illustrations तक सीमित नहीं है — logos और lettering भी ठीक उसी तरह bloat होते हैं, जो वहाँ सबसे ज़्यादा परेशान करता है जहाँ आपको crisp edges और साफ़ vinyl cuts चाहिए।

235 नोड बनाम 76 नोड
BRAND शब्द को दो तरीकों से वेक्टराइज़ किया गया: बाईं ओर 235 एंकर पॉइंट, दाईं ओर 76
Wordmark को भी यही treatment मिलता है। बाईं ओर: auto-trace letterforms में 235 anchors फैला देता है। दाईं ओर: PerfectVector इसे 76 के साथ rebuild करता है — साफ़ curves जिन्हें edit करना आसान और cut करना तेज़ रहता है।

आज़माएँ

PerfectVector में एक PNG या JPG डालें — login नहीं, credit card नहीं। आपको अपने result पर ही node और color count दिख जाएगा, ताकि कुछ भी download करने से पहले आप ख़ुद अंतर देख सकें।

क्या मैं Illustrator में सिर्फ़ Simplify इस्तेमाल नहीं कर सकता?

कर सकते हैं, और इससे मदद मिलती है — लेकिन Simplify पहले से bloated पाथ का अनुमान लगाकर काम करता है, इसलिए यह अक्सर corners को round कर देता है और curves को ऐसे shift कर देता है जिन पर आपको निगरानी रखनी पड़ती है। यह messy starting point के ऊपर cleanup step है। साफ़ output के साथ वेक्टराइज़ करने से cleanup पूरी तरह skip हो जाता है: simplify करने को कुछ रहता ही नहीं, क्योंकि points शुरुआत से ही अच्छी जगह रखे गए होते हैं।

Blog से और

परफ़ेक्ट वेक्टर बनाने
के लिए तैयार हैं?