php pdf轉(zhuǎn)換成圖片的方法:首先下載“imagemagick-6.7.1-6”;然后進(jìn)行編譯安裝;接著安裝imagick的php擴(kuò)展;最后通過php代碼調(diào)用即可。
推薦:《php視頻教程》
php利用imagick把pdf轉(zhuǎn)成png
需求:通過php把pdf生成png圖片,一般用在在線閱讀瀏覽用的。
windows下實(shí)現(xiàn):
1.php的dll擴(kuò)展下載地址:http://valokuva.org/outside-blog-content/imagick-windows-builds/
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”關(guān)鍵字,有的話就代表安裝好了。
6.最后要安裝ghostscript.exe,要不然會報(bào)錯的。下載地址:http://downloads.ghostscript.com/public/gs904w32.exe
7.最后執(zhí)行php腳本即可,根據(jù)需求自己修改。
linux下實(shí)現(xiàn):
1 下載imagemagick-6.7.1-6
wget ftp://ftp.u-aizu.ac.jp/pub/graphics/image/imagemagick/imagemagick.org/imagemagick.tar.gz2 解壓
# tar -xzvf imagemagick.tar.gz3 編譯安裝
# cd imagemagick-6.7.1-6 # ./configure -prefix=/usr/local/imagemagick -enable-lzw -with-modules && make && make install4.查看一下
# /usr/local/imagemagick/bin/convert -version5.測試一下
# pwd /root/test/imagemagick-6.7.1-6 # cd images/ # /usr/local/imagemagick/bin/convert -sample 25%x25% wizard.jpg test.jpg6.開始裝imagick的php擴(kuò)展(注意:安裝imagick擴(kuò)展時需要php >= 5.1.3,imagemagick >= 6.2.4)
7.獲取imagick(最新版本獲?。篽ttp://pecl.php.net/package/imagick)
# wget http://pecl.php.net/get/imagick-3.1.0rc1.tgzhttp://code.google.com/p/lnamp-web-server/downloads/detail?name=imagick-3.1.0b1.tgz&can=2&q=label:imagick8.解壓
# tar -zxvf imagick-3.1.0rc1.tgz apt-get install php5-dev9.phpize
# cd imagick-3.1.0rc1 # phpize10.配置編譯
# ./configure # make&&make install注意:編譯成功后會在php 擴(kuò)展目錄生成imagick.so,然后再php.ini里面 加上“extension="/usr/lib/php5/20090626 lfs/imagick.so"”
11.重啟apache
/etc/init.d/apache2 restart12.也可以使用pecl方式安裝
1) sudo apt-get install libmagick-dev2) sudo apt-get install php-pear php5-dev3) sudo pecl install imagick
php代碼調(diào)用:
function pdf2png($pdf,$path){ if(!extension_loaded('imagick')){ return false; } if(!file_exists($pdf)){ return false; } $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;}