画像形式を変換する (ベリー簡単!) - Perl,ImageMagick

例えばGIFをJPEGに変換する、このように異なる画像形式に変換する処理をImageMagickを利用すると、信じられないくらい簡単に行える。

サンプル

;#
;#画像形式を変換する
;#

use Image::Magick;

#-- オブジェクト作成 --#
my $image = Image::Magick->new;

#-- 画像を読込む(GIF) --#
$image->Read('./image.gif');

#-- 画像を保存する(JPEG) --#
$image->Write('./image.jpg');

画像を読み込む時にも自動で形式を判定してくれるが、画像を保存する時には指定した「ファイル名の拡張子」を見て自動的に認識し、'*.jpeg'ならJPEG形式として保存してくれる。え?と思われるだろうがウソのような本当の話だ。実際に実行して試してみられたい。

ちなみに、Writeメソッドはファイルに保存するだけではなく標準出力(ディスプレイ, CGIならブラウザ)に向けて出力することも出来る。その場合は

$image->Write('jpeg:-');

といった感じで「Write('ファイル形式:-')」と記述すれば良い。