您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關php中pdf轉換成圖片的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
php pdf轉換成圖片的方法:首先下載PHP的DLL擴展;然后把下載好的DLL改名成“php_imagick.dll”;接著修改“php.ini”;最后安裝“ghostscript.exe”并執行PHP腳本即可。
PHP利用ImageMagick把PDF轉成PNG
一、Windows下實現
PHP的DLL擴展下載地址:http://valokuva.org/outside-blog-content/imagick-windows-builds/。
里面有用于PHP不同的版本DLL,要注意和你的版本相同。
把下載好的DLL改名成 php_imagick.dll(我是下載的php_imagick_dyn-Q16.dll)然后放入到PHP安裝目錄中的EXT。
修改php.ini 增加 "extension=php_imagick.dll" 不包含雙引號哦!
重啟apache后寫個phpinfo后搜索“imagick”關鍵字,有的話就代表安裝好了。
最后要安裝ghostscript.exe,要不然會報錯的。下載地址:http://downloads.ghostscript.com/public/gs904w32.exe
最后執行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、測試一下(convert默認安裝到了/usr/local/bin下面,上面的命令可能提示找不到convert命令,那么可以在/usr/bin下面創建 一個 到/usr/local/bin/convert的鏈接:)
# cd /usr/bin # ln -s /usr/local/bin/convert convert # convert -version
6、開始裝imagick的PHP擴展(注意:安裝imagick擴展時需要PHP >= 5.1.3,ImageMagick >= 6.2.4)
7、獲取imagick(最新版本獲取:http://pecl.php.NET/package/imagick)
# wget http://pecl.php.net/get/imagick-3.1.0RC1.tgz http://code.google.com/p/lnamp-web-server/downloads/detail?name=imagick-3.1.0b1.tgz&can=2&q=label%3Aimagick
8、解壓
# tar -zxvf imagick-3.1.0RC1.tgz
9、phpize
# cd imagick-3.1.0RC1 # phpize (根據自己的路徑來)
注意:運行/usr/local/webserver/php/bin/phpize時出現:
Configuring for: PHP Api Version: 20041225 Zend Module Api No: 20060613 Zend Extension Api No: 220060519 Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.
根據網上的解決辦法是:
# cd /usr/src # wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz # tar -zvxf m4-1.4.9.tar.gz # cd m4-1.4.9 # ./configure && make && make install # cd ../ # wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz # tar -zvxf autoconf-2.62.tar.gz # cd autoconf-2.62/ # ./configure && make && make install 或者 # yum install m4 yum install autoconf
10、配置編譯
#./configure --with-php-config=/usr/local/php/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 --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick 注意:編譯成功后會在php 擴展目錄生成imagick.so,然后再php.ini里面 例如: /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/imagick.so 加上extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/imagick.so 注意版本問題:不然會報make: *** [imagick_class.lo] Error 1 等類似錯誤。
11、重啟apache
#service httpd restart
使用PECL方式安裝
1) sudo apt-get install libmagick-dev 2) sudo apt-get install php-pear php5-dev 3) sudo pecl install imagick
三、PHP代碼調用
<?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; }
感謝各位的閱讀!關于php中pdf轉換成圖片的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。