小新的笔记 自我活着,就是为了使别人过得更完美。——雷锋
博主 小新的笔记
粤ICP备2024299964号博主 2024年10月28日 在线自豪地使用 Typecho 建站搭配使用 🌻Sunny 主题当前在线 16 人
歌曲封面 未知作品

粤ICP备2024299964号

网站已运行 1 年 101 天 17 小时 36 分

Powered by Typecho & Sunny

17 online · 41 ms

Title

PHP PDF转图片

小新

·

·

462次阅读
PHP
Article
⚠️ 本文最后更新于2024年08月14日,已经过了473天没有更新,若内容或图片失效,请留言反馈

之前做过一个项目,需要把pdf转成图片,一页一张图片,存到一个数组里面。当时想了很多办法都没有实现,只能委曲求全使用第三方的服务(云展网)。

之前也不是没有用过composer,但是今天偶然发现composer有把pdf转成图片的类库。以前居然没有想到(我要退出歌坛了~)。

引入类库

♾️ text 代码:
composer require spatie/pdf-to-image

转换成图片

♾️ text 代码:
$pdf = new Spatie\PdfToImage\Pdf($pathToPdf);
$pdf->saveImage($pathToWhereImageShouldBeStored);

获取页数

♾️ text 代码:
$pdf->getNumberOfPages();

根据页数保存图片

♾️ text 代码:
$pdf->setPage(2)
    ->saveImage($pathToWhereImageShouldBeStored);

可以定义输出格式

♾️ text 代码:
$pdf->setOutputFormat('png')
    ->saveImage($pathToWhereImageShouldBeStored);

可以压缩图片质量(100是最高)

♾️ text 代码:
$pdf->setCompressionQuality(100);

结合我的需要应该这样就可以实现了

♾️ text 代码:
$image = [];
$pdf = new Spatie\PdfToImage\Pdf($pathToPdf);
$num = $pdf->getNumberOfPages();
for ($i=1; $i<=$num; $i++) {
    $image = $pdf->setPage(i)->setOutputFormat('png')->setCompressionQuality(100)
        ->saveImage('保存的图片路径命名');
}
return $image;
现在已有 0 条评论,0 人点赞

广告

页底广告 页底广告
Comment:共0条
发表
搜 索 消 息 足 迹
你还不曾留言过..
你还不曾留下足迹..
博主 不再显示
博主