Install

Install from UNIX source

./configure --prefix=/home/usrname/local --datadir=/home/usrname/local --datarootdir=/home/usrname/local --with-modules --without-perl

References

一般的な使用

convertコマンドを使って各種画像形式に変換できる。 たいていの形式なら対応している。 複数ページpsファイルも分割してpng,jpg等に変換できる。

convert -antialias hoge.ps hoge.png
convert -antialias -density 150x150 hoge.ps hoge.png
mogrify -density 144 -format png hoge.ps
convert -antialias -resize 50%  hoge.ps hoge.png
soutaironII.png

Tips

画像に文字を書き込む

convert -pointsize 32 -draw "text 0,25 'hoge'" huga.jpg huga.jpg

「-pointsize XX」で文字サイズの変更、「-draw "text X,X 'hoge'"」で位置(X,X)に「hoge」をdraw。文字列の位置の指定は左下隅が(0,0)。

画像の一部を指定した色でfillする(透過)

convert -fill white -region 580x30 -colorize 50% hoge.jpg hoge.jpg

epsファイルへの変換

TeXに図を入れる場合、図をepsに変換する必要がある(jpeg等を直接取り込めもするが、epsに統一する)。 その際

convert hoge.png eps2:hoge.eps
convert hoge.png eps3:hoge.eps
convert -compress ZIP hoge.png eps3:hoge.eps

等指定すると、サイズを小さくできる(Post Script Level 2/3での出力。圧縮を有効)。

gray scale変換

convert -type GrayScale hoge.png huga.png

NEFファイルの変換

Imagemagickは、raw image fileの一種であるNEFの変換に対応していない。 そこでdcrawを使い変換する:

dcraw -w -T *.NEF
mogrify -format jpg -quality 90 *.tiff

複数ファイルの一括変換

画像のフォーマットや大きさを変換する。 変換先のファイルを指定せずに上書きする。フォーマット変換なら、元のファイルの拡張子だけ変換して出力する。 このおかげで複数のファイルをまとめて変換することができる。例えば test01.png, test02.png, test03.png, ..., test99.png という99個のPNGフォーマットの画像ファイルをまとめて GIFファイルに変換するには、

mogrify -format gif test*.png

とすれば良い。サイズ変換は

mogrify -geometry 300x200 test*.png

とすればよい。この場合、 変換後のファイルは元のファイルに上書きされる。convert の場合と同じように "-geometry 300x200!" も使える。

その他、画像の回転などもできる。man mogrify を参照。

参考

アニメーション

GIF animation

連番ファイルがあれば一括で変換してくれる。 当然入力ファイルの形式は(imagemagickが対応していれば)何でもよい。

convert -loop 1 -delay 100 *.gif animation.gif

「loop」はループ回数。「0」なら無限ループ。 「delay」はミリ秒。

MPEG

必要なエンコーダがあればGIF animationと同じく変換できる。 必要なエンコーダ「mpeg2encode」。こここれ)からとってきてmake。 特に設定することなくmakeが通る(と思う)。パス(PATH)が通っているディレクトリに「mpeg2encode」(/src以下に作成される)をコピー。 これでOK。

convert -loop 1 -delay 1 *.gif animation.mpg