2013-03-04 18 views
6

Inkscape、Illustrator、または他のアプリケーションからのSVGファイルがあります。私は図形をlineto,moveto,curvetoの形式に変換したい。私はその後、私のアプリケーションは、それぞれのパスにオブジェクトを変換します、引数としてSVGファイルを与えるSVGシェイプをパスにプログラムで変換する(lineto、moveto)

./Appname svgfile outfilewithpath 

私が欲しいのようなものです。

+0

「rect」、「circle」、「ellipse」、「polygon」などの要素をパスに変換したいとしたらどうでしょう? – Duopixel

+0

はいとテキストもあります。 – skanzariya

+0

私はInkscapeについて知りに行き、それが仕事をすることができることを発見しましたが、私が望むのは、あらゆるソフトウェアからsvgを作成して、オブジェクトをパスに変換したいと思ったことです。すなわち、ラインToに移動します。 Qt、Perl、Python、C、C++のいずれかのソリューションが受け入れられます。 – skanzariya

答えて

5

Inkscapeには、コマンドラインインターフェイスがあります。参考のためverb sourceと共にInkscape man pageを使用:

ObjectToPath動詞パスにオブジェクトを変換する:

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 

これらは関連していますPerl、Ruby、PHP、PythonからInkScapeを実行する方法に関する質問:

+0

Inkscape自体はそのようなことをすることができます。また、私はinkscapeコマンドラインについてもよく知っています。私は他の解決策、おそらくPythonまたはperlを探しています。例えば、 Python/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秒かかり、簡単にInkscapeのGUIを開きますこれはアクティブなアプリケーションになるので、理想的ではありませんが、唯一の答えです私はそれが実際に動作することがわかりました。

関連する問題