PerlMagickで画像の情報を取得する(Image::Magick)

画像情報取得する方法には、GetまたはPingを使います。

Get画像情報取得する

Getメソッドでは、取得したい情報をパラメータとして渡します。

use strict;
use Image::Magick;
my $file = 'sample.jpg';
my $image = Image::Magick -> new;
$image -> Read( $file );
my( $width, $height ) = $image -> Get( 'width', 'height' );
printf "width - %d, height - %dn", $width, $height;
undef $image;
exit;

指定できる属性は、"width"と"height"以外にも、"filesize"や"format"などもあります。
詳しくは、Get an Image Attributeをご確認ください。

Ping画像情報取得する

Pingメソッドでは、ファイル名やファイルハンドルを指定できます。
基本的に"Get"で用は済みますが、こちらもたまに使うことがあります。

use strict;
use Image::Magick;
my $file = 'sample.jpg';
my $image = Image::Magick -> new;
my( $width, $height ) = $image -> Ping( $file );
printf "width - %d, height - $heightn", $width, $height;
undef $image;
exit;

取得できる情報は、"width"と"height"、"size"そして"format"です。
詳しくは、Miscellaneous Methodsの下の方をご確認ください。

補足

個人的には"Stat"というメソッドがあれば、直感で使えたのになと思います。

更新履歴

2008-06-04
公開

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です