画像変換
最初に断っておきますが,画像フォーマットの変更です.ビットマップ画像をトレースしてベクタ画像にするような変換ではありません.環境はWindowsです.
やり方
- Inkscapeのインストール (https://inkscape.org/ja/)
- EPSを扱う場合はGhostscriptのインストール (https://www.ghostscript.com/releases/gsdnld.html)
- 新しいテキストファイルを作って,名前をconvert.batに変更.右クリック→編集から以下を貼り付け.
convert.bat
@echo off
for %%f in (%*) do (
"C:\Program Files\Inkscape\bin\inkscape" -p %%f -o %%~dpnf.eps
)
exit /B 0
- エクスプローラ上で変換したい画像をconvert.batファイルの上にドラック&ドロップ.D&DしたファイルがすべてEPS
EPSに変換されます.
- PDFやPNGに一括変換したい場合は"%%~dpnf.eps"の部分を"%%~dpnf.pdf", "%%~dpnf.png"としてください.D&Dする画像はInkscapeが対応していればなんでもよいです.
注意事項
- 日本語を含むファイル名はだめです.
- inkscapeのパスは適宜変更してください.
- Ghostscriptは環境変数にパスを追加してください(https://syunsuke.github.io/r_prepare_for_repoco/ghostscript%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B.html)
補足
- EPSに拘る必要はありません.基本的にはLatexではEPSの代わりとしてPDFが推奨されています.EPSに指定されている場合などに本プログラムをご利用ください.
- バッチプログラムの動作について
convert.bat
for %%f in (%*) do (
ドラック&ドロップをするとコマンドライン上ではconvert.bat file1 file2 f...のように実行される.
%* 引数すべてを取得.%1引数の一つ目 %2...
%%fにはD&Dしたファイルのパスが一つ一つ格納される.
"C:\Program Files\Inkscape\bin\inkscape" -p %%f -o %%~dpnf.eps
Inkscapeの画像変換.-p 変換元 -o 出力
%%~dpnf fのパスの拡張子以外(https://orangeclover.hatenablog.com/entry/20101004/1286120668)
)
exit /B 0
参考資料
- InkscapeでEPSファイルを一括で変換する方法 - きまぐれモノログ。, https://kimaguremono.hateblo.jp/entry/inkscape_cmd
- 【Windows便利小ワザ】大量のフォルダをそれぞれ個別のZIPファイルに一括で圧縮する方法,https://rezv.net/technic/58567/
- バッチファイルでファイルパスからファイル名や拡張子を自由に取り出す方法 - みちしるべ,https://orangeclover.hatenablog.com/entry/20101004/1286120668