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版
Oct 09 PHP
php的一个简单加密解密代码
Jan 14 PHP
CI框架中libraries,helpers,hooks文件夹详细说明
Jun 10 PHP
PHP采集类Snoopy抓取图片实例
Jun 19 PHP
自己写的php curl库实现整站克隆功能
Feb 12 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
Nov 09 PHP
php语言的7种基本的排序方法
Dec 28 PHP
PHP序列化/对象注入漏洞分析
Apr 18 PHP
PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
Jul 01 PHP
Yii2验证器(Validator)用法分析
Jul 23 PHP
在TP5数据库中四个字段实现无限分类的示例
Oct 18 PHP
laravel框架邮箱认证实现方法详解
Nov 22 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
Javascript 获取滚动条位置等信息的函数
2009/09/08 Javascript
javascript 命名规则 变量命名规则
2010/02/25 Javascript
Javascript倒计时代码
2010/08/12 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
2014/08/18 Javascript
用jquery实现动画跳到顶部和底部(这个比较简单)
2014/09/01 Javascript
Jquery实现仿腾讯微博发表广播
2014/11/17 Javascript
JavaScript实现在页面间传值的方法
2015/04/07 Javascript
jQuery简单实现日历的方法
2015/05/04 Javascript
Bootstrap基础学习
2015/06/16 Javascript
第一次接触JS require.js模块化工具
2016/04/17 Javascript
JavaScript中实现键值对应的字典与哈希表结构的示例
2016/06/12 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
JS基于构造函数实现的菜单滑动显隐效果【测试可用】
2016/06/21 Javascript
JS设置CSS样式的方式汇总
2017/01/21 Javascript
nodejs批量下载图片的实现方法
2017/05/19 NodeJs
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
JavaScript实现HTML5游戏断线自动重连的方法
2017/09/18 Javascript
vue计算属性及使用详解
2018/04/02 Javascript
微信小程序实现类似微信点击语音播放效果
2020/03/30 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
2020/07/21 Javascript
Python基于正则表达式实现文件内容替换的方法
2017/08/30 Python
Django Web开发中django-debug-toolbar的配置以及使用
2018/05/06 Python
python获取引用对象的个数方式
2019/12/20 Python
pycharm通过anaconda安装pyqt5的教程
2020/03/24 Python
Python ini文件常用操作方法解析
2020/04/26 Python
Python参数传递实现过程及原理详解
2020/05/14 Python
Tensorflow--取tensorf指定列的操作方式
2020/06/30 Python
C#基础面试题
2016/10/17 面试题
自荐信不宜过于夸大
2013/11/06 职场文书
幼儿园实习自我鉴定
2013/12/15 职场文书
银行营业厅大堂经理岗位职责
2014/01/06 职场文书
水电工岗位职责
2014/02/12 职场文书
党员民主评议自我评价
2014/10/20 职场文书
学校党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
大学校园餐饮创业计划书
2019/08/07 职场文书
用position:sticky完美解决小程序吸顶问题的实现方法
2021/04/24 HTML / CSS