首頁 >後端開發 >PHP問題 >php pdf轉換成圖片的方法

php pdf轉換成圖片的方法

藏色散人
藏色散人原創
2020-11-16 09:11:297125瀏覽

php pdf轉換成圖片的方法:先下載「ImageMagick-6.7.1-6」;然後進行編譯安裝;接著安裝imagick的PHP擴充;最後透過PHP程式碼呼叫即可。

php pdf轉換成圖片的方法

本教學操作環境:windows10系統、php5.6,本文適用於所有品牌的電腦。

推薦:《PHP影片教學

PHP利用imagick把PDF轉成PNG

需求:透過PHP把PDF產生PNG圖片,一般用在線上閱讀瀏覽用的。

Windows下實作:

1.PHP的DLL擴充下載位址: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」關鍵字,有的話就代表安裝好了。

6.最後要安裝ghostscript.exe,不然會報錯的。下載網址:http://downloads.ghostscript.com/public/gs904w32.exe

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://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 apt-get install php5-dev

9.phpize

# cd imagick-3.1.0RC1 # phpize

10.設定編譯

# ./configure # make&&make install

注意:編譯成功後會在php 擴充目錄產生imagick.so,然後再php.ini裡面加上「extension="/ usr/lib/php5/20090626 lfs/imagick.so"」

 

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')){
       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;
}

以上是php pdf轉換成圖片的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn