十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
php实现pdf转换成图片的方法:首先安装好“GhostScript”;然后使用imagick把PDF转成图片即可。
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、成都做网站、万山网络推广、小程序开发、万山网络营销、万山企业策划、万山品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;创新互联公司为所有大学生创业者提供万山建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
推荐:《PHP视频教程》
PHP中使用imagick实现把PDF转成图片
PHP Manual里,对imagick的描述,真的是简洁,每个成员函数,点击打开就看到如下文本:
Warning This function is currently not documented; only its argument list is available.
刚才解决了PHP加载问题后,对图片的处理相当方便,网上随便找了一段:
getImageWidth(); $h = $imagick->getImageHeight(); if ($w > $width || $h > $height) { if ($crop) { $imagick->cropThumbnailImage($width, $height); } else { $imagick->resizeImage($width, $height, Imagick::FILTER_LANCZOS, 1, true); } } $processed_image = $imagick->getImageBlob(); return $processed_image; } $s=resize("123.jpg", 60, 40, 1); echo $s; ?>
但我要用这个扩展做的,是将PDF转成PNG。PDF哦!
setResolution(120,120); $im->setCompressionQuality(100); if($page==-1) $im->readImage($pdf); else $im->readImage($pdf."[".$page."]"); foreach ($im as $Key => $Var) { $Var->setImageFormat('png'); $filename = $path."/". md5($Key.time()).'.png'; if($Var->writeImage($filename) == true) { $Return[] = $filename; } } return $Return; } $path="images";//请确保当前目录下有这个文件夹,由于一直要用,所以就不加检测了 $s=pdf2png("test.pdf",$path); $scount=count($s); for($i=0;$i<$scount;$i++) { echo ""; } ?>
跟上面的差不多吧?可是总是不成功,readImage那边异常了,查看错误输出:
PHP Fatal error: Uncaught exception 'ImagickException' with message 'PostscriptDelegateFailed `test.pdf': No such file or directory'
百度谷歌了好久,最后灵机一动,不是说Postscript么?我找,我装。
这个Postscript,其实是GhostScript。
装好后,一跑,OK啦!