Heim > php教程 > PHP源码 > PHP利用imagick把PDF转成PNG

PHP利用imagick把PDF转成PNG

PHP中文网
Freigeben: 2016-06-01 14:33:00
Original
1875 Leute haben es durchsucht

需求:通过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(&#39;imagick&#39;)){
       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(&#39;png&#39;);
       $Filename = $Path.&#39;/&#39;.md5($Key.time()).&#39;.png&#39;;
       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)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage