PHP实现PDF转图片的方法详解
发布:smiling 来源: PHP粉丝网 添加日期:2023-06-23 15:53:54 浏览: 评论:0
这篇文章主要给大家介绍了关于PHP将PDF转图片的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
Windows环境下
一、开启 Imagick 扩展
1、安装PHP扩展:Imagick,下载地址 https://pecl.php.net/package/imagick 注意和php版本保持一致;
2、将下载下来的文件解压,把php_imagick.dll复制到php/ext下,即php的扩展目录;
3、打开php.ini文件,添加
extension=php_imagick.dll
4、重启apache
二、安装imagemagick
1、下载地址:https://windows.php.net/downloads/pecl/deps/
2、将下载下来的imagemagick文件解压到E盘目录下(目录可根据情况调整,我这里E:\ImageMagick-7.1.0-18-vc15-x64);
3、将E:\ImageMagick-7.1.0-18-vc15-x64\bin加入到系统环境变量path中
4、然后将E:\ImageMagick-7.1.0-18-vc15-x64\bin目录下所有的以dll结尾的文件复制到php根目录下,如果提示重复点击跳过即可
5、复制完成后重启Apache(建议重启计算机),这时候php的imagick拓展安装完成
三、安装Ghostscript软件
1、Ghostscript下载地址:https://www.ghostscript.com/releases/gsdnld.html
四、实例
- /**
- * @package pdf文档转换图片
- * @param string $filepath pdf文档绝对路径 D:/test/test.pdf
- * @param string $filename 文件夹名 每个pdf创建一个文件夹
- * @return array
- */
- public function pdf2png($pdf,$filename){
- $path = ROOT_PATH . "public". DS ."uploads". DS ."ppt_image". DS . $filename ; // 图片存放目录
- if (!file_exists($path)) {
- mkdir($path, 0700, true); //创建目录
- chmod($path, 0700); //赋予权限
- }
- $images = [];
- $imagick = new \Imagick();
- // 设置图片分辨率
- $imagick->setResolution(120, 120);
- // 该函数接受单个参数$quality,该参数保存一个表示图像压缩质量的整数值
- $imagick->setCompressionQuality(100);
- $imagick->readImage($pdf);
- foreach ($imagick as $key => $val) {
- // 设置图片格式并生成png图片
- $val->setImageFormat('png');
- // $file = $path . DIRECTORY_SEPARATOR . md5($key.time()) . '.png'; //图片名
- $file = $path . DS . md5($key.time()) . '.png'; //图片名
- if ($val->writeImage($file) === true) {
- $images[] = $file;
- }
- }
- return $images;
- }
Tags: PHP实现PDF转图片
- 上一篇:PHP生成饼图的示例代码
- 下一篇:最后一页
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)