search
Homephp教程PHP源码PHP利用imagick把PDF转成PNG

PHP利用imagick把PDF转成PNG

Jun 01, 2016 pm 02:33 PM
imagickphppng

需求:通过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)!


Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment