一、ImageMagick介绍
ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过89种基本格式的图片文件,包括流行的TIFF、JPEG、GIF、 PNG、PDF以及PhotoCD等格式。它提供多种语言的api接口。其中包含php接口。
二、安装ImageMagick
官网http://www.imagemagick.org/script/install-source.php描述了在同操作系统下的安装。我使用的是centos,所以下载源代码包 。
wget http://www.imagemagick.org/download/ImageMagick.tar.gz
tar -xzvf ImageMagick.tar.gz
cd ImageMagick-6.7.8-5
./configure --prefix=/usr/local/imagemagick --enable-shared
make && make install
执行 /usr/local/imagemagick/bin/convert,如果出现一堆东西那证明安装成功
注意如果之前安装的版本比较旧的话需要卸载掉。进入安装目录执行 make uninstall make clean make distclean,然后重新安装最新的版本
三、安装php扩展
到pecl.php.net下载源代码包。地址http://pecl.php.net/package/imagick
我下载最近版的3.1.0RC2,但是这里就有问题,make的时候一直报错,坑爹啊。最后我下了个旧版本,2.3的,一切ok
wget http://pecl.php.net/get/imagick-2.3.0.tgz
tar -xzvf imagick-2.3.0.tgz
cd imagick-2.3.0
phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
make && make install
最后修改下php.ini,然后写个demo。大功告成
四、demo
<?php set_time_limit(0); header('Content-type:image/jpeg'); $image = new Imagick('image/1.JPG'); $image>adaptiveResizeImage(400,300,True); echo $image; ?>
结果会输出一张400*300的图片