画像を色反転するだけのperlスクリプト
ImageMagick(perlMagick)を使って、引数に指定されたファイルを色反転するだけのスクリプト。*1たくさんの画像を色反転するのに便利。
#!/usr/bin/perl # 引数で受け取った名前の画像ファイルを色反転する。 use strict; use warnings; use Image::Magick; my ($image, $x); $image = Image::Magick->new ; $#ARGV == -1 and die print "画像ファイル名を指定してください。" ; while ($#ARGV+1) { $x = $image->Read("$ARGV[0]"); warn "$x" if "$x"; $x = $image->Negate(); warn "$x" if "$x"; $x = $image->Write("$ARGV[0]"); warn "$x" if "$x"; @$image = (); shift; } undef $image;
最後の"@$image = ();"を書かないと複数の画像を溜め込んで、出力するときにアニメーションgifにしたり、hoge-1.png、hoge-2.png、...、と複数のpngを一気に吐き出したりカオスな事になる。(←はまった)
*1:後で「mogrify -negate」で良かったことに気づいたorz