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+MSSQL分页的例子
Oct 09 PHP
优化使用mysql存储session的php代码
Jan 10 PHP
php 清除网页病毒的方法
Dec 05 PHP
PHP类中Static方法效率测试代码
Oct 17 PHP
PHP中extract()函数的妙用分析
Jul 11 PHP
thinkphp 多表 事务详解
Jun 17 PHP
PHP正则提取不包含指定网址的图片地址的例子
Apr 21 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
Jan 05 PHP
CI(Codeigniter)的Setting增强配置类实例
Jan 06 PHP
PHP缩略图生成和图片水印制作
Jan 07 PHP
php四种定界符详解
Feb 16 PHP
PHP PDOStatement::fetchObject讲解
Feb 01 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
浅谈discuz密码加密的方式
2014/05/22 PHP
PHP实现Google plus的好友拖拽分组效果
2016/10/21 PHP
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
用C/C++来实现 Node.js 的模块(二)
2014/09/24 Javascript
通过伪协议解决父页面与iframe页面通信的问题
2015/04/05 Javascript
浅谈angular.js中实现双向绑定的方法$watch $digest $apply
2015/10/14 Javascript
jquery ui dialog替代confirm实例分析
2016/01/25 Javascript
jQuery代码实现图片墙自动+手动淡入淡出切换效果
2016/05/09 Javascript
微信小程序开发之大转盘 仿天猫超市抽奖实例
2016/12/08 Javascript
es6的数字处理的方法(5个)
2017/03/16 Javascript
关于Node.js中Buffer的一些你可能不知道的用法
2017/03/28 Javascript
angularJs使用$watch和$filter过滤器制作搜索筛选实例
2017/06/01 Javascript
Vue 兄弟组件通信的方法(不使用Vuex)
2017/10/26 Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
2018/01/02 jQuery
JS实现的倒计时恢复按钮点击功能【可用于协议阅读倒计时】
2018/04/19 Javascript
vue操作下拉选择器获取选择的数据的id方法
2018/08/24 Javascript
关于微信公众号开发无法支付的问题解决
2018/12/28 Javascript
npm 常用命令详解(小结)
2019/01/17 Javascript
JS实现计算小于非负数n的素数的数量算法示例
2019/02/26 Javascript
javascript 设计模式之组合模式原理与应用详解
2020/04/08 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
Python实现的简单算术游戏实例
2015/05/26 Python
python操作MySQL 模拟简单银行转账操作
2017/09/27 Python
python实现单向链表详解
2018/02/08 Python
对python产生随机的二维数组实例详解
2018/12/13 Python
如何运行带参数的python脚本
2019/11/15 Python
Python使用正则实现计算字符串算式
2019/12/29 Python
python 控制台单行刷新,多行刷新实例
2020/02/19 Python
python全栈开发语法总结
2020/11/22 Python
创意活动策划书
2014/01/15 职场文书
2014年元旦促销活动方案
2014/02/22 职场文书
法定代表人授权委托书
2014/04/04 职场文书
镇班子对照检查材料思想汇报
2014/09/24 职场文书
2015年大学教师工作总结
2015/05/20 职场文书
微信小程序基础教程之echart的使用
2021/06/01 Javascript
Python 一键获取电脑浏览器的账号密码
2022/05/11 Python