読者です 読者をやめる 読者になる 読者になる

画像の扱いについて

mac perl GD ImageMagik

画像のリサイズを行う必要があったので、関連のモジュールやソフトウフェアをインストールしました。
しかし、結構上手くいかないことがあったのでメモ。


環境は「MacOX Snow Leopard」です。


試したモジュールはこちらで紹介されていたものです。
Webから画像をとってきてリサイズする処理のベンチマーク

Image::Magik (成功)

ImageMagick (RMagick)をMacにインストール
こちらの記事を参考にImageMagickをインストールしました。
上手くいかないままの箇所があるのですが、動作するようにはなりました。


前準備

sudo port install jpeg               # 成功
sudo port install libpng           # 成功
sudo port install libwmf          # 失敗
sudo port install tiff                 # 成功
sudo port install lcms              # 成功
sudo port install freetype        # 失敗
sudo port install ghostscript   # 失敗


ImageMagickのインストール

wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar xvzf ImageMagick.tar.gz
cd ImageMagick-X.Y.Z

./configure
make
sudo make install


Image::Magickのインストール

sudo cpan Image::Magick


リサイズ部分のスクリプト

my $img = Image::Magick->new;
$img->Read($file);
my ($source_width, $source_height) = $img->Get('width', 'height');
my $to_width = 120;
my $to_height = $to_width/$source_width*$source_height;
$img->Resize(width => $to_width, height => $to_height);
$img->Write($file);

GD::Image メソッド呼び出しで失敗

こちらはインストールできました。
しかし、GD::Imageモジュールの「newFromJpeg」メソッドが「Can't locate」になってしまいます。
Image::Resizeをforceでインストールしたのが悪かったのか・・・?

Image::Imlib2 インストール失敗

cpanインストールで失敗してしまいました。


Image::Imlib2でアイコンをクリスマス仕様に
を参考にインストール作業をしましたが、

$ port install imlib2

で失敗してしまいます。Mac初期のperlを消してしまったのが原因っぽい。