开发者

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

开发者 https://www.devze.com 2023-01-14 10:18 出处:网络 作者: JSON_L
目录1.环境配置:2.实现原理:3.安装php扩展imagick4.安装ghostscript5.pdf转图片总结1.环境配置:
目录
  • 1.环境配置:
  • 2.实现原理:
  • 3.安装php扩展imagick
  • 4.安装ghostscript
  • 5.pdf转图片
  • 总结

1.环境配置:

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

2.实现原理:

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

3.安装pythonphp扩展imagick

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

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

也可以使用源码安装。

www.devze.com

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等操作系统的使用。rojAcKzMYEGhostscript中文版能够查看以及打印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-开发者_Go教程>writeImage($fileName) == true) php{
            $return[] = $fileName;
        }
    }
    print_r($return);
}

 返回结果:

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

打开图片

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

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

总结

到此这篇关于PHP实现PDF转图片的文章就介绍到这了,更多相关PHP PDF转图片内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

0

精彩评论

暂无评论...
验证码 换一张
取 消