0 1253
linux编译安装ImageMagick及编译安装php的imagick扩展,并使php支持webp的图片转换_图一

一、linux编译安装ImageMagick

1、首先安装所需软件libwebp-dev

sudo apt-get install libwebp-dev webp

2、下载imagemagick源码包


wget https://www.imagemagick.org/download/ImageMagick.tar.gz
3、tar zxvf ImageMagick.tar.gz


4、./configure --prefix=/usr/local/imagemagick7

5、sudo make

6、sudo make install

7、查看是否有webp格式的支持

 sudo /usr/local/imagemagick7/bin/convert -list format | grep webp

WEBP* rw+   WebP Image Format (libwebp 1.2.2 [020F])

说明安装成功了,如果发现没有这个webp说明安装的有问题,可以在第四步的时候查看 libwebp是否大于0.4.1如果不显示no则需要重新编译安装libwebp

checking for libwebp >= 0.4.1... no  

checking for libwebpmux >= 0.5.0 libwebpdemux >= 0.5.0... no

具体安装步骤在 https://www.erlangyun.com/p.php?id=258

8、编译安装php的imagick扩展


wget http://pecl.php.net/get/imagick-3.4.3.tgz
tar zxvf imagick-3.4.3.tgz
cd imagick-3.4.3
/usr/local/php5/bin/phpize
./configure --with-php-config=/usr/local/php5/bin/php-config --with-imagick=/usr/local/imagemagick7


sudo make

sudo make install

安装成功完之后就会出现这个


Installing shared extensions:     /usr/local/php5/lib/php/extensions/no-debug-non-zts-20121212/

Installing header files:          /usr/local/php5/include/php/

然后编译 php.ini


把这个加进去

extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20121212/imagick.so

重启php-fpm

新建一个php文件输入 phpinfo();

看看有没有webp

使用方法


/**
  * @param1 $webp webp格式图片
  * @param2 转换的格式,如jpg,png等等
  */ public function webpToPic($webp,$type){ 
 $IM = new imagick($webp); $IM->setImageFormat($type); 
 $fileName = '/tmp/magick-test.'.$type; $IM->writeImage($fileName)
 }
 
批量转换图片简单用法 mogrify -path ./test -format png *.jpg 
path 生成文件所在目录 format 生成文件的格式


[分类]
[来源] http://erlangyun.com/p/id/259.html
[声明] 本站资源来自用户分享,如损害你的权益请联系客服QQ:120074275给予处理。