PHP中使用Imagick读取pdf并生成png缩略图实例

yipeiwu_com6年前PHP代码库

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>"; 

相关文章

php+resumablejs实现的分块上传 断点续传功能示例

本文实例讲述了php+resumablejs实现的分块上传 断点续传功能。分享给大家供大家参考,具体如下: resumablejs官网 http://www.resumablejs.co...

php 过滤危险html代码

#用户发布的html,过滤危险代码 复制代码 代码如下:function uh($str) { $farr = array( "/\s+/", //过滤多余的空白 "/<(\/?)...

php设计模式介绍之编程惯用法第1/3页

php设计模式介绍之编程惯用法第1/3页

在这里总结的许多编程惯用法都是很值得做为单独一个章节的,甚至一本书的。你应该把这章做为PHP模式设计使用惯用法的相关介绍,而且查看一些列出的参考书来进行更深入的学习。 测试你的代码 可能...

php 获取文件行数的方法总结

stream_get_line获取文件行数 <?php $file_path = 'xxx.txt'; //文件路径 $line = 0 ; //初始化行数 //...

UCenter Home二次开发指南

前言本文将就UCH二次开发这个核心主题,以各种实现的代码为主,辅助部分说明概略的讲解如何针对UCH进行二次开发。过段时间UCH就开源了,准备到时候再详细的写篇UCH机制分析。 顺便说下,...