Keynoteで吐き出した画像ファイルをepsに一括変換するスクリプト

画像をKeynote で作ると、論文用に作った画像を発表にもそのまま利用できてお得. Keynote からはき出せるファイル形式は tiff, png, jpeg のみなので、これを LaTex で認識できるよう eps 形式に変換してやる必要がある. UNIX 系のOS では、ImageMagick という画像変換パッケージがあり、この中に入っている convert コマンドを利用すると画像ファイルを eps に変換できる*1. Mac OS X の場合、ImageMagickMacPorts を通してインストールできる.

port install ImageMagick

使い方は

convert a.tiff a.eps # a.tiff が入力ファイル, a.eps が出力ファイル

が、Keynote から吐き出した画像ファイルを毎回コマンド打って変換するのはなんだか面倒.
Keynote から吐き出した tiff ファイルを eps に変換するには、以下のようなコマンドを実行すればよい.

for f in *.tiff; do convert $f `echo $f | sed s/tiff/eps/g`  ; done

tiff じゃない拡張子のファイルを扱う場合は、"tiff"の部分を変更して使うこと.

余白部が邪魔

という場合は、-trim オプションを利用する.

for f in *.tiff; do convert -trim $f `echo $f | sed s/tiff/eps/g`  ; done

Makefile 中で使う場合

このスクリプトMakefile に書く場合は、シェル変数へのアクセスが $$に変わることに注意.

eps:
    for f in *.tiff; do convert $$f `echo $$f | sed s/tiff/eps/g`  ; done
clean:
    rm -f *eps

*1:UNIX 系の OS に convert というツールがバンドルされているかのように記述してあったので修正. random_oracle さん、ありとうございました.