यह एक छोटी सी बात की गूढ़ बात है, मुझे बस इसे एक बार करने की आवश्यकता है और इसे भ्रमित करने वाला पाया इसलिए मैंने सोचा कि मैं इस पर एक संपूर्ण वीडियो करूंगा।
बात यह है कि, सब कुछ एसवीजी में नहीं है।
शानदार है क्योंकि यह कुछ भी हो सकता है। लेकिन इसके लिए वाक्यविन्यास किसी भी अन्य आकृतियों की तुलना में थोड़ा अधिक जटिल है। इसलिए (शायद इस कारण से?) इलस्ट्रेटर हमेशा एसवीजी में आकृतियों को सबसे बारीकी से उपयुक्त तत्व के साथ आउटपुट करता है। आयताकार हैं
, केवल सीधी रेखाओं से बनी अन्य आकृतियाँ हैं
, या यदि यह एक खुली आकृति है
, आदि।
यह ठीक होगा, उन आकृतियों के लिए DOM के तरीकों को छोड़कर। पथ तत्व में एक विधि होती है, getTotalLength()
जो आपको बताती है कि मार्ग कितना लंबा है। यह बहुत अच्छा है और कभी-कभी उपयोगी होता है, लेकिन आप इसे केवल किसी अन्य तत्व पर नहीं कर सकते ।
एक कारण जिसे आप जानना चाहते हैं कि लंबाई इसलिए है क्योंकि आप इसे चेतन करना चाहते हैं ताकि आकार "खुद को खींचता है" - एक शांत थोड़ा डिजाइन प्रभाव (उदाहरणों का संग्रह)। आप इसे सीएसएस में कर सकते हैं, लेकिन सीएसएस को लागू करने के लिए कुछ जावास्क्रिप्ट का उपयोग करना अच्छा होता है ताकि यह हर बार सही दूरी तय करे।
तो कहते हैं कि आप उस ड्राइंग प्रभाव को करना चाहते हैं, लेकिन आकार एक ऐसा है जो जावास्क्रिप्ट विफल रहता है। आप उस बहुभुज को एक पथ में बदल सकते हैं, इसे नेत्रहीन रूप से बदलने के बिना, बस एक बिंदु जोड़कर, जिसमें बेज़ियर हैंडल हो। जैसे, पेन टूल पर क्लिक करें और ड्रैग करें ताकि हैंडल बाहर आए और जो लाइन पहले से है उसके साथ हैंडल को संरेखित करें। उस बिंदु का अस्तित्व इसे
आउटपुट में बना देगा ।
यदि आप ऐसा करते हैं, तो Poly2Path नामक एक उपकरण है जो काम करता है, और इसके लिए उस शानदार बिंदु की आवश्यकता नहीं है।