首页 > php教程 > PHP源码 > 正文

PHP利用imagick把PDF转成PNG

PHP中文网
发布: 2016-06-01 14:33:00
原创
2138人浏览过

需求:通过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
登录后复制

2 解压

# tar -xzvf ImageMagick.tar.gz
登录后复制

3 编译安装

# cd  ImageMagick-6.7.1-6# ./configure -prefix=/usr/local/imagemagick -enable-lzw -with-modules && make && make install
登录后复制

4.查看一下

# /usr/local/imagemagick/bin/convert -version
登录后复制

5.测试一下

# pwd/root/test/ImageMagick-6.7.1-6# cd images/# /usr/local/imagemagick/bin/convert -sample 25%x25% wizard.jpg test.jpg
登录后复制

6.开始装imagick的PHP扩展(注意:安装imagick扩展时需要PHP >= 5.1.3,ImageMagick >= 6.2.4)

7.获取imagick(最新版本获取:http://www.php.cn/)

# wget http://www.php.cn/
登录后复制

http://www.php.cn/

8.解压

# tar -zxvf imagick-3.1.0RC1.tgzapt-get install php5-dev
登录后复制

9.phpize

# cd imagick-3.1.0RC1# phpize
登录后复制

10.配置编译

# ./configure --with-php-config=/opt/modules/php5.3.5/bin/php-config --with-imagick=/usr/local/imagemagick
登录后复制
# make&&make install
登录后复制

可能会出错,因为版本升级,文件夹结构少许变动,我们创建一下软连接:

ln -s /usr/local/imagemagick/include/ImageMagick-6 /usr/local/imagemagick/include/ImageMagick

若是报这样的错误:make: *** [imagick_file.lo] Error 1则

定位PKG_CONFIG     export PKG_CONFIG_PATH=/usr/local/imagemagick/lib/pkgconfig

再configure

注意:编译成功后会在php 扩展目录生成imagick.so,然后再php.ini里面 加上“extension="/usr/lib/php5/20090626+lfs/imagick.so"”

注意版本问题:不然会报make: *** [imagick_class.lo] Error 1  等类似错误。

11.重启apache

/etc/init.d/apache2 restart
登录后复制

12.也可以使用PECL方式安装

1) sudo apt-get install libmagick-dev
2) sudo apt-get install php-pear php5-dev
3) sudo pecl install imagick

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;}
登录后复制
<br/>
登录后复制
转载请注明:PHP利用ImageMagick把PDF转成PNG   (http://www.php.cn/)
登录后复制

 以上就是php利用imagick把pdf转成png的内容,更多相关内容请关注php中文网(www.php.cn)!

办公小浣熊
办公小浣熊

办公小浣熊是基于商汤大语言模型的原生数据分析产品,

办公小浣熊 460
查看详情 办公小浣熊
相关标签:
php
WPS零基础入门到精通全套教程!
WPS零基础入门到精通全套教程!

全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号