centos系统
php7.0.3
一:安装ImageMagick
下载 wget https://netix.dl.sourceforge.net/project/imagemagick/im7-src/ImageMagick-7.0.7-25.tar.gz
解压 tar -zxvf ImageMagick-7.0.7-25.tar.gz
进入目录 cd ImageMagick-7.0.7-25
执行命令 ./configure
执行完了后默认安装路径在/usr/local下
make && make install
完成之后进入安装文件夹,查看ImageMagick是否工作
cd /usr/local/bin/
./convert -version
二:安装imagick扩展
cd /usr/local/
#下载
wget http://pecl.php.net/get/imagick-3.4.3.tgz
#解压
tar -zxvf imagick-3.4.3.tgz
#安装PHP imsgick扩展
cd imagick-3.4.3
#phpize
/usr/local/php/bin/phpize
#配置
./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local
make && make install
#出现以下代表安装php扩展成功
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
Installing header files: /usr/local/php/include/php/
#配置php.ini
vim /usr/local/php/etc/php.ini
#增加
extension=imagick.so
#重启web服务或者php-fpm
service php-fpm restart
#测试
php -r 'phpinfo();' | grep imagick
三、安装 ghostscript (PDF转图片必备)
> yum -y install ghostscript
四:测试例子:
/** * 将pdf文件转化为多张png图片 * @param string $pdf pdf所在路径 (/www/pdf/abc.pdf pdf所在的绝对路径) * @param string $path 新生成图片所在路径 (/www/pngs/) * * @return array|bool */ function pdf2png($pdf, $path) { if (!extension_loaded('imagick')) { return false; } if (!file_exists($pdf)) { return false; } $im = new Imagick(); //$im->setImageFormat("PNG"); $im->setResolution(120, 120); //设置分辨率 值越大分辨率越高 $im->setCompressionQuality(100); $im->readImage($pdf); foreach ($im as $k => $v) { $v->setImageFormat('png'); $fileName = $path . md5($k . time()) . '.png'; if ($v->writeImage($fileName) == true) { $return[] = $fileName; } } return $return; }