需求:通过PHP把PDF生成PNG图片,一般用在在线阅读浏览用的。
Windows下实现:
1.PHP的DLL扩展下载地址:http://www.php.cn/
2.里面有用于PHP不同的版本DLL,要注意和你的版本相同
3.把下载好的DLL改名成 php_imagick.dll(我是下载的php_imagick_dyn-Q16.dll)然后放入到PHP安装目录中的EXT。
4.修改php.ini 增加 "extension=php_imagick.dll" 不包含双引号哦!
5.重启apache后写个phpinfo后搜索“imagick”关键字,有的话就代表安装好了。
6.最后要安装ghostscript.exe,要不然会报错的。下载地址:http://www.php.cn/
7.最后执行PHP脚本即可,根据需求自己修改。
Linux下实现:
1 下载ImageMagick-6.7.1-6
wget ftp://ftp.u-aizu.ac.jp/pub/graphics/image/ImageMagick/imagemagick.org/ImageMagick.tar.gz
Nach dem Login kopieren
2 解压<br/>
# tar -xzvf ImageMagick.tar.gz
Nach dem Login kopieren
3 编译安装<br/>
# cd ImageMagick-6.7.1-6# ./configure -prefix=/usr/local/imagemagick -enable-lzw -with-modules && make && make install
Nach dem Login kopieren
4.查看一下<br/>
# /usr/local/imagemagick/bin/convert -version
Nach dem Login kopieren
5.测试一下<br/>
# pwd/root/test/ImageMagick-6.7.1-6# cd images/# /usr/local/imagemagick/bin/convert -sample 25%x25% wizard.jpg test.jpg
Nach dem Login kopieren
6.开始装imagick的PHP扩展(注意:安装imagick扩展时需要PHP >= 5.1.3,ImageMagick >= 6.2.4)<br/>
7.获取imagick(最新版本获取:http://www.php.cn/)<br/>
# wget http://www.php.cn/
Nach dem Login kopieren
http://www.php.cn/
8.解压<br/>
# tar -zxvf imagick-3.1.0RC1.tgzapt-get install php5-dev
Nach dem Login kopieren
9.phpize<br/>
# cd imagick-3.1.0RC1# phpize
Nach dem Login kopieren
10.配置编译
# ./configure --with-php-config=/opt/modules/php5.3.5/bin/php-config --with-imagick=/usr/local/imagemagick
Nach dem Login kopieren
# make&&make install
Nach dem Login kopieren
可能会出错,因为版本升级,文件夹结构少许变动,我们创建一下软连接:
ln -s /usr/local/imagemagick/include/ImageMagick-6 /usr/local/imagemagick/include/ImageMagick<br/>
若是报这样的错误:make: *** [imagick_file.lo] Error 1则
定位PKG_CONFIG
export PKG_CONFIG_PATH=/usr/local/imagemagick/lib/pkgconfig<br/>
再configure
注意:编译成功后会在php 扩展目录生成imagick.so,然后再php.ini里面 加上“extension="/usr/lib/php5/20090626+lfs/imagick.so"”<br/>
注意版本问题:不然会报make: *** [imagick_class.lo] Error 1 等类似错误。
11.重启apache
/etc/init.d/apache2 restart
Nach dem Login kopieren
12.也可以使用PECL方式安装
1) sudo apt-get install libmagick-dev<br/>2) sudo apt-get install php-pear php5-dev<br/>3) sudo pecl install imagick<br/>
PHP代码调用:
function pdf2png($PDF,$Path){
if(!extension_loaded('imagick')){
returnfalse;
}
if(!file_exists($PDF)){
returnfalse;
}
$IM =new imagick();
$IM->setResolution(120,120);
$IM->setCompressionQuality(100);
$IM->readImage($PDF);
foreach($IM as $Key => $Var){
$Var->setImageFormat('png');
$Filename = $Path.'/'.md5($Key.time()).'.png';
if($Var->writeImage($Filename)==true){
$Return[]= $Filename;
}
}
return $Return;}
Nach dem Login kopieren
<br/>
Nach dem Login kopieren
转载请注明:PHP利用ImageMagick把PDF转成PNG (http://www.php.cn/)
Nach dem Login kopieren
以上就是PHP利用imagick把PDF转成PNG的内容,更多相关内容请关注PHP中文网(www.php.cn)!