2013-03-04 8 views
6

मेरे पास एक एसवीजी फ़ाइल है जो इंकस्केप, इलस्ट्रेटर या किसी अन्य एप्लिकेशन से आ रही है। मैं आकार को lineto, moveto, curveto प्रारूप में रूपांतरित करना चाहता हूं।प्रोग्रामेटिक रूप से एसवीजी आकृतियों को पथ में परिवर्तित करें (लिनेटो, moveto)

./Appname svgfile outfilewithpath 

मैं एक तर्क के रूप एसवीजी फ़ाइल दे देंगे, तो अपने आवेदन संबंधित पथ में वस्तु में परिवर्तित कर देंगे:

क्या मैं चाहता हूँ कुछ की तरह है।

+0

बस स्पष्ट होने के लिए, आप 'rect', 'circle',' ellipse' और 'polygon' जैसे तत्वों को रूपांतरित करना चाहते हैं? – Duopixel

+0

हां और पाठ भी। – skanzariya

+0

मुझे इंकस्केप के बारे में पता चला और पाया कि यह नौकरी कर सकता है, लेकिन मैं जो चाहता हूं वह है कि मैंने किसी भी सॉफ्टवेयर से एसवीजी तैयार किया है और ऑब्जेक्ट को पथ में परिवर्तित करना चाहता था। यानी लाइन टू ले जाएं। क्यूटी, पर्ल, पायथन, सी, सी ++ किसी भी समाधान को स्वीकार कर लिया जाता है। – skanzariya

उत्तर

5

इंकस्केप में कमांड लाइन इंटरफ़ेस है। संदर्भ के लिए verb source के साथ Inkscape man page का उपयोग करें:

inkscape filename.svg --select=myobject --verb=ObjectToPath --export-plain-svg=filename_to_path.svg 

export-text-to-path तर्क रास्तों के लिए पाठ नोड्स धर्मान्तरित:

inkscape filename.svg --export-eps=filename.eps --export-text-to-path 

ये संबंधित हैं

ObjectToPath क्रिया एक पथ के लिए एक वस्तु धर्मान्तरित पर्ल, रुबी, पीएचपी या पायथन से इंकस्केप को चलाने के तरीके पर प्रश्न:

+0

इंकस्केप स्वयं सामान कर सकता है और मैं भी इंकस्केप कमांड लाइन के बारे में बहुत अच्छी तरह से अवगत हूं। मैं कुछ अन्य समाधान, शायद पाइथन या पर्ल की तलाश में हूं। पूर्व के लिए पायथन/PerlApp svgfile outfilewithcoordinate.txt। मुझे पता है कि svg xml फ़ाइल है और xml लाइब्रेरी के साथ पार्स किया जा सकता है। – skanzariya

3

यह वही अंत में मेरे लिए काम किया है:

inkscape -f filename.svg --verb EditSelectAll --verb SelectionUnGroup --verb EditSelectAll --verb ObjectToPath --verb FileSave --verb FileQuit 

यह चलाने के लिए लगभग 9 सेकंड लगते हैं और कुछ समय के लिए इंकस्केप जीयूआई को खोलता है , जो सक्रिय अनुप्रयोग बन जाता है, इसलिए यह आदर्श नहीं है, लेकिन यह एकमात्र उत्तर है मैं वास्तव में काम करता है कि मिल सकता है।

संबंधित मुद्दे