InkscapeコマンドラインでSVG処理
目次
以前、ImageMagickを使ったマルチアイコン作成方法を紹介しましたが、Inkscapeのコマンドラインオプションを紹介します。
SVGなどのベクターグラフィックスGUIソフトとして有名なInkscapeですが、CUIも用意されており、複数のSVGからサイズの違うPNGを出力するなどのバッチ処理を簡単に行うことができます。ImageMagickでもSVGを扱えますが、Inkscape固有の機能を使ったSVGの変換やPDF+LaTeX出力などはInkscapeを使わなければできません。
使用頻度が高いシナリオとしては、SVGから他形式へのエクスポートが考えられます。エクスポート関係のオプションでよく使いそうなものを上げてみました。
エクスポートする種類を指定
- -e FILENAME, –export-png=FILENAME:PNGをエクスポート
- -A FILENAME, –export-pdf=FILENAME:PDFをエクスポート
- -E FILENAME, –export-eps=FILENAME:EPSをエクスポート
- -l FILENAME, –export-plain-svg=FILENAME:Inkscape固有の記述を削除したSVGをエクスポート
エクスポートする際の大きさや背景色など
- -b COLOR, –export-background=COLOR:背景色を指定
- -d DPI, –export-dpi=DPI:DPIを指定(デフォルト90)
- -w WIDTH, –export-width=WIDTH:幅(DPI指定を上書き)
- -h HEIGHT, –export-height=HEIGHT:高さ(DPI指定を上書き)
- -T, –export-text-to-path:テキストをパスへ変換(ラスター画像のみ)
- –export-latex:テキスト情報をLaTeXとして書き出し
使用例
Windowsの場合はinkscape.exe
へパスを通しておいてください。
600×400のPNGへ変換
$ inkscape filename.svg --export-png=filename.png -w600 -h400
テキストをパスに変換してPDFへ変換
$ inkscape filename.svg --export-pdf=filename.pdf --export-text-to-path
PDF+LaTeXへ変換
$ inkscape filename.svg --export-pdf=filename.pdf --export-latex
テキスト以外の図形情報を含むfilename.pdf
とテキスト情報を含むfilename.pdf_tex
が生成されます。