zoukankan      html  css  js  c++  java
  • php(thinkphp)在linux系统下pdf转png图片【转】

    PHP)中使用imagick实现把PDF转成图片

    操作之前,先在linux服务器安装 ghostscript

    650 2017-06-17 13:31:20 root cd ./soft
    651 2017-06-17 13:31:25 root wget http://ghostscript.com/releases/ghostscript-8.71.tar.gz
    652 2017-06-17 13:41:14 root tar zxvf ghostscript-8.71.tar.gz
    653 2017-06-17 13:41:26 root cd ghostscript-8.71
    654 2017-06-17 13:41:37 root ./configure --prefix=/usr
    655 2017-06-17 13:42:06 root mkdir obj
    656 2017-06-17 13:42:15 root mkdir bin
    657 2017-06-17 13:42:23 root make all
    658 2017-06-17 13:45:29 root make install

    然后重启一下:

    use Imagick;
    /**
    * PDF2PNG
    * @param $pdf 待处理的PDF文件
    * @param $path 待保存的图片路径
    * @param $page 待导出的页面 -1为全部 0为第一页 1为第二页
    * @return 保存好的图片路径和文件名
    */
    function pdf2png($pdf,$path,$page=-1)
    {
    if(!extension_loaded('imagick'))
    {
    return false;
    }
    if(!file_exists($pdf))
    {
    echo dirname($pdf);
    echo "file not exit";
    return false;
    }

    $im = new Imagick();


    $im->setResolution(120,120);
    $im->setCompressionQuality(100);
    try {
    if($page==-1){
    $im->readImage($pdf);
    }else{
    $im->readImage($pdf."[".$page."]");
    }
    } catch (Exception $e) {
    Log::notice($e->getMessage());
    }
    foreach ($im as $Key => $Var)
    {
    $Var->setImageFormat('png');
    $filename = $path."/". md5($Key.time()).'.png';
    if($Var->writeImage($filename) == true)
    {
    $Return[] = $filename;
    }
    }
    return $Return;
    }

    function cpdf2png()
    {
    $path="public/files";//请确保当前目录下有这个文件夹,由于一直要用,所以就不加检测了
    $s=self::pdf2png("public/files/bp/36.pdf",$path);
    $scount=count($s);
    for($i=0;$i<$scount;$i++)
    {
    echo "<div align=center><font color=red>Page ".($i+1)."</font><br><a href="".$s[$i]."" target=_blank><img border=3 src="".$s[$i].""></a></div><p>";
    }
    }

    完全是参考:http://www.jb51.net/article/60337.htm 这篇文章。非常感谢

  • 相关阅读:
    转 C#接收邮件
    WebApi的windows服务之路
    自动化升级工具之客户端升级工具之windows服务升级操作
    自动化升级工具之客户端升级工具之数据库升级操作
    GoJs实现流程管理图
    MvcForum作者称该项目进入缓慢更新
    生鲜蔬菜生产称重管理系统
    MvcForum中文版+PostgreSql源码下载
    Asp.Net MVC开源论坛中文版
    HTML5+Activex+Singr+ABP+MongoDB
  • 原文地址:https://www.cnblogs.com/lippor/p/7040085.html
Copyright © 2011-2022 走看看