ImageMagick是一款功能强大的图片处理工具包,很多互联网应用中都会涉及到图片处理工作,比如切割、缩放、水印、格式转换等。ImageMagick就是一个理想的工具包。这里主要记录一下Linux RedHat 2.6.18下的环境安装过程。
安装基础依赖:
先检查一些基本的图片支持包是否已经安装,比如jpge和png
1RedHat环境下: 2rpm -qa | grep libpng-devel 3rpm -qa | grep libjpeg-devel
如果没有,可以用yum或者下载源码安装:
yum -y install libpng-devel libjpeg-devel
安装webp库:
1先下载libwebp-0.3.0.tar.gz 2tar -zxvf libwebp-0.3.0.tar.gz 3cd libwebp-0.3.0 4./configure && make && make install 5cp /usr/local/lib/libwebp.so.4.0.2 /usr/lib64/ 6ln -s /usr/lib64/libwebp.so.4.0.2 /usr/lib64/libwebp.so.4 7ln -s /usr/lib64/libwebp.so.4.0.2 /usr/lib64/libwebp.so
安装ImageMagick:
1tar -zxvf ImageMagick-6.8.4-8.tar.gz 2cd ImageMagick-6.8.4-8 3./configure --prefix=/usr/local/imagemagick --with-webp 4make && make install 5 6ln -s /usr/local/imagemagick/include/ImageMagick-6 /usr/local/imagemagick/include/ImageMagick
配置环境变量:
export MAGICK_HOME=/usr/local/imagemagick
检查是否安装成功:
convert -list format 查看支持的格式(png,jpeg,webp)
安装PHP和imagick模块:php版本5.4.9,源码安装:(要先安装mysql-client)
1tar -zxvf php-5.4.9.tar.gz 2cd php-5.4.9 3./configure --prefix=/usr/local/php --with-mysql=/opt/apps/mysql-client/ --enable-fpm --with-fpm-user=nobody --with-fpm-group=nobody 4make && make install 5cp php.ini-production /usr/local/php/php.ini
安装imagick-3.1模块:
1tar -zxvf imagick-3.1.0RC2.tgz 2cd imagick-3.1.0RC2 3/usr/local/php/bin/phpize 4export PKG_CONFIG_PATH=/usr/local/imagemagick/lib/pkgconfig 5./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick 6make && make install
安装完成,可以在代码里方便地处理图片了。
另外提一下:webp格式的图片确实在体积上减少了很多,按google官方的说法是平均能减少30%的大小。但是目前只有chrome浏览器支持这一格式,而在移动端,该webp格式的解析引擎性能并不优秀,所以在使用时还要衡量好流量和性能。