php實現pdf轉圖片

huaweichenai發表於2022-06-07

php實現pdf轉圖片所需

    1. Imagick擴充
    1. php的spatie/pdf-to-image外掛包
    1. Ghostscript軟體

一:Imagick擴充安裝

參考:PHP的Imagick擴充安裝

二:php的spatie/pdf-to-image外掛包安裝

composer require spatie/pdf-to-image

三:Ghostscript軟體安裝

1:Ghostscript下載地址:Ghostscript下載地址

2:安裝Ghostscript

tar -xzf ghostscript-9.56.1.tar.gz
cd ghostscript-9.56.1
./configure
make && make install

3:配置Ghostscript

修改/etc/ImageMagick-6/policy.xml檔案
(1):將pattern="{PS,PDF,XPS}"這行修改成

<policy domain="module" rights="read|write" pattern="{PS,PDF,XPS}" />

(2):將pattern="PDF"修改成

<policy domain="coder" rights="read|write" pattern="PDF" />

四:實現pdf轉圖片例項

$pdfPath = 'XXX';//PDF地址
$pdfToImg = new \Spatie\PdfToImage\Pdf($pdfPath);
$pages = $pdfToImg->getNumberOfPages();
$fullPath = 'XXX';//圖片儲存地址
$imgs = [];
for ($i = 1; $i <= $pages; $i++) {
    $imgFile =$i . '.png';
    $pdfToImg->setPage($i)->saveImage($fullPath . '/' . $imgFile);
    $imgFiles[] =  $fullPath . $imgFile;
}

return $imgFiles;//圖片地址陣列

根據如上就可以實現將pdf轉成圖片,多張pdf會轉成多張圖片

相關文章