1.环境配置:

PHP实现PDF转图片的详细过程(使用imagick)

2.实现原理:

Php使用扩展插件imagick进行图片处理,处理pdf时使用imagick去调用ghostscript

3.安装php扩展imagick

imagick是一个PHP扩展,调用的是ImageMagick提供API来进行图片的创建与修改。

我这里直接使用宝塔面板安装的,比较简单。

也可以使用源码安装。

Php > 安装扩展 > imagemagick > 安装

PHP实现PDF转图片的详细过程(使用imagick)

PHP实现PDF转图片的详细过程(使用imagick)

安装完成 

PHP实现PDF转图片的详细过程(使用imagick)

命令窗口测试

php --ri imagick

PHP实现PDF转图片的详细过程(使用imagick)

4.安装ghostscript

ghostscript一款图像浏览工具,这款软件适用于Unix、Mac OS X、VMS、Windows、OS/2和Mac OS classic等操作系统的使用。Ghostscript中文版能够查看以及打印PS、EPS、PDF格式的文件

安装命令很简单

yum install ghostscript

PHP实现PDF转图片的详细过程(使用imagick)

 当没有安装ghostscript 直接使用,报错:

PHP实现PDF转图片的详细过程(使用imagick)

5.pdf转图片

功能代码

/**
 * 将pdf文件转化为多张png图片
 */
function pdfToPng()
{
    $pdf = 'https://solveset.oss-cn-beijing.aliyuncs.com/1671686912.pdf';
    $path = public_path('uploads/');
    $im = new \Imagick();
    $im->setResolution(120, 120); //设置分辨率 值越大分辨率越高
    $im->setCompressionQuality(100);
    $im->readImage($pdf);
    $return = [];
    foreach ($im as $k => $v) {
        $v->setImageFormat('png');
        $fileName = $path . md5($k . time()) . '.png';
        if ($v->writeImage($fileName) == true) {
            $return[] = $fileName;
        }
    }
    print_r($return);
}

 返回结果:

PHP实现PDF转图片的详细过程(使用imagick)

打开图片

PHP实现PDF转图片的详细过程(使用imagick)

Pdf转图片成功实现,因为只有一页,如果是多页则是多张图片。 

总结

原文地址:https://blog.csdn.net/json_ligege/article/details/128413937

相关文章:

  • 2021-12-13
  • 2021-12-25
  • 2021-06-23
  • 2022-03-07
  • 2021-11-30
  • 2021-12-31
  • 2021-12-04
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-12
  • 2021-11-08
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
相关资源
相似解决方案