node.jsでImageMagick + gmをインストールして画像処理

nodejs_imagemagickNode.jsで画像処理(Resize, Crop)をする方法を調べたときの覚書。

環境: CentOS 5.10, node.js v0.10.21

GraphicsMagickもしくはImageMagickをnode.jsから利用できるモジュール「gm」が良さそうなのでインストールしてみた。

 

< 2014/08/21 Modified >
CentOS6.5の環境ではYUM経由でImageMagick 6.5.4-7がインストールされて問題なかったので、こっちを推奨。

 

まずはImageMagickでJPEGとPNGをサポートするようにライブラリをインストール
# yum install libjpeg libjpeg-devel libpng libpng-devel

何となくJPEG 2000にも対応しておく
# yum install jasper-devel

ImageMagickをソースからコンパイル(yum経由は古いから)
# cd /opt/software/
# wget http://www.imagemagick.org/download/ImageMagick.tar.gz
# tar xzvf ImageMagick.tar.gz
# cd ImageMagick-6.8.6-4/
# ./configure
# make
# make install

バージョンの確認
# convert --version

対応しているフォーマット一覧
# convert -list format

 

今度はgmのインストール
# cd /home/project/hoge/
# npm install gm

 

ImageMagickを使う場合は次のようになる。

var gm = require('gm').subClass({ imageMagick: true });
gm("img.png").resize(150, 150).write('/path', callback);

 

 

< Related Posts >