php pdf如何转换成图片

php pdf转换成图片的方法:首先下载PHP的DLL扩展;然后把下载好的DLL改名成“php_imagick.dll”;接着修改“php.ini”;最后安装“ghostscript.exe”并执行PHP脚本即可。

php pdf如何转换成图片

推荐:《PHP视频教程》

PHP利, y Z H ^ i H q I用ImageMagick把PDF转成PNG

一、Windows下实Q f f o L /

PHP的DLL扩展下u h S L h f载地址:http://valokuva.org/outside-blog-content/imagick-windows-builds/。

里面有用于PHP不同的版本DLL,要注意和你的版本相同。

把下载q 2 x * { :好的DLL改名成a ~ # w $ 9 n 2 php_imagick.dll(我是下载的php_imagick_dyn-Q16.dll)然后放入到PHP安装目录l E V I u @中的EXT。

修改php.ini 增加 "extension=php_imagick.dll" 不包含双引号哦!

重启apache后写个phpinfo后搜索“imagick”关键字,有的话就代表安装好了。

最后要安装ghostscript.exe,要不然会报错的o ^ v H w ^ 4。下载地址:http://downloads5 3 s [ ~ f w A {.ghostscript.com/public/gs904w32.exe

最后执行PHP脚本即可,根据需求自己修改。

二、Linux下实现

1 、下载ImageMagick-6.7.p # @ ] h $1-6 (版本要准确)

#wget ftp://ftp.u-aizu.ac.jp/pub/graphics/image/ImageMagick/imagemagick.org/ImageMagick.tar.gz

2 、解压

# tar -xzvf ImageMagick.tar.gz

3、 编译安装

# cd  ImageMagick-6.7.1-6
# ./configure -prefix=/usr/local/imagemagick -enable-lzw -with-moduleh M J Ys
# make
#make install

4、查看一下

# /usr/local/imagemagick/bin/convert -version

5、测试一下(convu R N aert默认安装到了/usr/local/bin下面,上面的命? + r P 0 $令可能提示找不到convert命令,那么x $ *可以在/usr/bin下面创建 一个 到/usr/locaL X ^ Q 1l/bin/convert的链接:)

# cd /uz x A a | Usr/bin
# ln -s /usr/local/bin/conver* W + r , Ft convert
# convert -versiJ l 1 S $ ) Q ] [on

6、开始装iB U jmagick的PHP扩展(注意:安装imagick扩展时需要PHP >= 5.1.3,ImageMagick >= 6.2.X i v k 4 ) c j K4)

7、获取iW V & P T 2 & v +magick(最新版本获取:hk . M ^ 2 2 http://i N n ^ Upecl.php.NET/package/imagick)

# wget http://pecl.php.net/get/imagick4 g v N I D-3.) p 7 ; a1.0RC1.tgz
http://code.google.com/p/lnamp-web-server/downloaK b C ` D 9ds/detail?name=imagick-3.1.0b1.tgz&a : M I n E : ( ^mp;can=2&q=label%3Aimagick

8、解压

# tar -zxvf imagick-3.1.0RC1.tgz

9、phpize

# cd imac w  & / Q 3 9 Tg` h =ick-3.1.0RC1
# phpize (根据自己的路径来)

注意:运行/9 H K E Husr/local/webserver/php/bin/phpize时出现:

Configuring for: PHP Api Version: 20041225 Zend Module Api No: 20 ( O F0060613 Zend Extension Api N^ U X g ? Uo:
220060519 Cannot find autoconf. PleaL V 0se cw  C ] B # f }heck your autoconf installation and the $PHPX } 6 k ) Q f D +_AUTOCONF
environment variable. Then, rerun this script.

根据网上的解决办法是:

# cd /usr/src
# wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.t8 ; q R mar.gz
# tar -zvxf m4-1.4.9.tar.gz
# cd mK , ~ _ p _ b j4-1.4.9
# ./configure && make && make in } + b 6 * } 4 fstall
# cd ../
# wget http:/_ ` V M c ./ftp.gnu.org/gnu/autoconf/auH D [ M N Z u A rtoconf-2.62.tar.gz
# tar -zvxf autoconf-2.62.tar.gz
# cd autoconf-2.62/
# ./configure &aS ) U ) L  o 8 Kmp;& make &a# - { e w ~ ?mp;& make install
或者
# yum install m4 yum install autoconf

10、配置编译

#./configure --with-php-config=/usr/local/php/bin/php-config --with-imagE e pickj $ `=/usr/local/imagemagick
# make
# make install
可能会出错,因为版本升级,文件夹结构少许变动,我们创建一下软连接:
# l) i 4 W s + Y 9n -s /usr/local/imagemagick/include/Img a K C ;ageu - 7 s 9 $ M 0 3Magick-6 /usr/local/imagemagick/include/ImageMagick
若是报这样的错误:make: *** [imagick_file.lo] Error 1则定位PKG_CONFIG export PKG_CONFIG_PATH=/usr/local2 K ! 9 v A w/imagemagick/lib/pkgconfig
#./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
注意:编译成功后会在php 扩V e E k 8 ] : [展目录生成imagick.so,然后再php.inik # r v : t |里面 例如: /usr/local/php/lib/php/extensions/no-debug2 r d ? Z y-nof N 1 5 xn-zts-20131226/imagick.so
加上extension=/usr/local/php/lib/php/extensions/no-debug-non-ztD r F _s-D I # . b f s (20131226/imagick.so
注意版本问题:不然会报make: *** [imagick_class.lo] ErrW s O J )  )or 1  等似错误。

11、重启apache

#service httpd restart

使用PECL方式安装

1) sudo apt-gL _ met install libmagick-dev
2) sudo apt-g@ % / s $et install php-pear php5-dev
3) sudo pecl install imagick

三、PHP代码调用

<?php
function pC / 9 2 t  C  )df2png($PDF,k Q  ) [ ; T$Path){
if(!extension_loaded('imagick')){
returnfalse;
}
if(!file_exists($PDF)){
returnfalse;
}
$IM =new imagick();
$IM) f Q U v 4 9 ) d->setResolution(120,120)W $ } $ 9 V U;
$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;
}

以上就是php pdf如何转换成图片的详细内容。