PHP中使用Imagick读取pdf并生成png缩略图实例
这篇文章主要介绍了PHP中使用Imagick读取pdf并生成png缩略图实例,本文直接给出实现代码,需要的朋友可以参考下
pdf生成png首页缩略图 (服务器需要支持Imagick)代码如下:
- /**
- * PDF2PNG
- * @param $pdf 待处理的PDF文件
- * @param $path 待保存的图片路径
- * @param $page 待导出的页面 -1为全部 0为第一页 1为第二页
- * @return 保存好的图片路径和文件名
- */
- function pdf2png($pdf,$path,$page=0)
- {
- if(!is_dir($path))
- {
- mkdir($path,true);
- }
- if(!extension_loaded('imagick'))
- {
- echo '没有找到imagick!' ;
- return false;
- }
- if(!file_exists($pdf))
- {
- echo '没有找到pdf' ;
- return false;
- }
- $im = new Imagick();
- $im->setResolution(120,120); //设置图像分辨率
- $im->setCompressionQuality(80); //压缩比
- $im->readImage($pdf."[".$page."]"); //设置读取pdf的第一页
- //$im->thumbnailImage(200, 100, true); // 改变图像的大小
- $im->scaleImage(200,100,true); //缩放大小图像
- $filename = $path."/". time().'.png';
- if($im->writeImage($filename) == true)
- {
- $Return = $filename;
- }
- return $Return;
- }
- $s=pdf2png('file/1371273225-ceshi_ppt.pdf','images');
- echo "<div align=center><img src=\"".$s."\"></div>";