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


Posted in PHP onJanuary 21, 2015

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 相关文章推荐
通用PHP动态生成静态HTML网页的代码
Mar 04 PHP
phpMyAdmin 链接表的附加功能尚未激活的问题
Aug 01 PHP
php输出xml格式字符串(用的这个)
Jul 12 PHP
关于PHP的相似度计算函数:levenshtein的使用介绍
Apr 15 PHP
邮箱正则表达式实现代码(针对php)
Jun 21 PHP
php 启动时报错的简单解决方法
Jan 27 PHP
ThinkPHP表单令牌错误的相关解决方法分析
May 20 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
Aug 03 PHP
PHP通过curl获取接口URL的数据方法
May 31 PHP
thinkphp整合系列之极验滑动验证码geetest功能
Jun 18 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
Dec 20 PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
Mar 26 PHP
PHP中使用Imagick实现各种图片效果实例
Jan 21 #PHP
PHP中让curl支持sock5的代码实例
Jan 21 #PHP
PHP中使用break跳出多重循环代码实例
Jan 21 #PHP
PHP获取数组最后一个值的2种方法
Jan 21 #PHP
PHP中iconv函数转码时截断字符问题的解决方法
Jan 21 #PHP
php计算数组相同值出现次数的代码(array_count_values)
Jan 20 #PHP
php实现excel中rank函数功能的方法
Jan 20 #PHP
You might like
Thinkphp多文件上传实现方法
2014/10/31 PHP
PHP实现无限极分类图文教程
2014/11/25 PHP
PHP 验证登陆类分享
2015/03/13 PHP
PHP使用ActiveMQ实例
2018/02/05 PHP
Laravel Reponse响应客户端示例详解
2020/09/03 PHP
JQuery Tab选项卡效果代码改进版
2010/04/01 Javascript
jquery解决图片路径不存在执行替换路径
2013/02/06 Javascript
jQuery快速上手:写jQuery与直接写JS的区别详细解析
2013/08/26 Javascript
JS Loading功能的简单实现
2013/11/29 Javascript
js中this的用法实例分析
2015/01/10 Javascript
avalonjs实现仿微博的图片拖动特效
2015/05/06 Javascript
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
AngularJS使用angular-formly进行表单验证
2015/12/27 Javascript
基于jquery实现三级下拉菜单
2016/05/10 Javascript
NodeJs的优势和适合开发的程序
2016/08/14 NodeJs
解析javascript图片懒加载与预加载的分析总结
2016/10/27 Javascript
jQuery解析返回的xml和json方法详解
2017/01/05 Javascript
微信小程序 tabs选项卡效果的实现
2017/01/05 Javascript
关于jquery form表单序列化的注意事项详解
2017/08/01 jQuery
vue watch自动检测数据变化实时渲染的方法
2018/01/16 Javascript
Vue中this.$router.push参数获取方法
2018/02/27 Javascript
Vue过渡效果之CSS过渡详解(结合transition,animation,animate.css)
2020/02/05 Javascript
详解vue-template-admin三级路由无法缓存的解决方案
2020/03/10 Javascript
[01:00]选手抵达华西村 整装待发备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
Python中关于Sequence切片的下标问题详解
2017/06/15 Python
Python中pygal绘制雷达图代码分享
2017/12/07 Python
Python中栈、队列与优先级队列的实现方法
2019/06/30 Python
pytorch实现用CNN和LSTM对文本进行分类方式
2020/01/08 Python
微软中国官方商城:Microsoft Store中国
2018/10/12 全球购物
军训 自我鉴定
2014/02/03 职场文书
车辆工程专业求职信
2014/04/28 职场文书
党委班子剖析材料
2014/08/21 职场文书
保管员岗位职责
2015/02/14 职场文书
go语言中json数据的读取和写出操作
2021/04/28 Golang
如何利用golang运用mysql数据库
2022/03/13 Golang
Python使用BeautifulSoup4修改网页内容
2022/05/20 Python