PHP中使用Imagick读取pdf并生成png缩略图实例
pdf生成png首页缩略图(服务器需要支持Imagick)
/**
*PDF2PNG
*@param$pdf 待处理的PDF文件
*@param$path待保存的图片路径
*@param$page待导出的页面-1为全部0为第一页1为第二页
*@return 保存好的图片路径和文件名
*/
functionpdf2png($pdf,$path,$page=0)
{
if(!is_dir($path))
{
mkdir($path,true);
}
if(!extension_loaded('imagick'))
{
echo'没有找到imagick!';
returnfalse;
}
if(!file_exists($pdf))
{
echo'没有找到pdf';
returnfalse;
}
$im=newImagick();
$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"<divalign=center><imgsrc=\"".$s."\"></div>";