Inkscapeでai/eps画像を使うあれこれ・pstoeditの変換がおかしい?

Posted by nogajun - 2008/11/27

_

vecteezyというベクター画像を配布しているサイトがあります。

うれしいことにIllustratorのai形式以外にもeps、svg形式も配布しているので、喜んでeps画像をダウンロードしてInkscapeで読み込ませると、こんな感じに穴が埋まります。(画像の真ん中「EPSで読み込ませたもの」参照)

変換して読み込ませた一覧

「線」のデータはあるけど「塗り」の部分の色が変換されてない?

Inkscapeはsvgしか扱えないので、pstoeditを呼び出してsvgに変換してから読み込んでいるようです。 手で「pstoedit -f plot-svg (元の画像ファイル).eps (出力ファイル).svg」とsvgに変換して読み込ませると、inkscapeで読みこんだものと同じように穴が埋まる。

原因がpstoeditということがわかったので、いろいろ試してみたのですが、わかった事は

  1. ai形式のファイルがあるならInkscape 0.46からは直接読み込めるので、まずはそれを読みこんでみる。(Illustrator 9.0以降のai形式でpdfデータがくっついていれば、それを読み込んでいるっぽい) epsしかない、もしくはダメな場合(読み込めない、画像がおかしい場合)はpdfに変換して読み込ませる。
  2. ai形式でもInkscapeで読み込めないものがあります。そういうファイルはuniconverter(debianパッケージ名はpython-uniconverter)を使ってpdfに変換してInkscapeに読み込みます。変換方法は「uniconverter (元のファイル).ai (出力するファイル).pdf」
  3. pdfに変換するには pstoedit epstopdfを使ってpdfに変換してInkscapeに読み込ませる。( svgには変換しない ) 変換法方は pstoedit -f gs:pdfwrite (元の画像ファイル).eps (出力ファイル).pdf epstopdf (元の画像ファイル).eps --outfile=(出力ファイル).pdf でおk。(画像の左「PDFで読み込ませたもの」参照)
  4. それでもダメならsk(Skencil)形式に変換して読み込む。変換方法は「pstoedit -f sk (元の画像ファイル).eps (出力ファイル).sk」な感じ。ただCMYK→RGB変換がうまくいかないのか色合いが若干変わります。(画像の右「Skencilで読み込ませたもの」参照)

え、 -ssp オプションをつけるといい?

書いた直後に、こんなの見つけてしまった。

確かに -ssp つけるとSkencilで読み込ませたのと同じになる。

2009.11.19追記

Inkscapeでeps画像を読み込む場合、pdfに変換して読み込ませることには変わりありませんが、変換をpstoeditでおこなうよりepstopdf(debianではtexlive-extra-utilsパッケージに収録)を使った方が、より精度よくInkscapeで読み込めるようです。