• 技术文章 >后端开发 >PHP问题

    php如何将office文件转pdf文件

    藏色散人藏色散人2020-07-31 09:42:43原创95

    php office转pdf的方法:首先打开“php.ini”文件;然后开启dcom扩展;接着配置office组件服务;最后运行将office文件转化为pdf的代码文件即可。

    推荐:《PHP视频教程

    将office文件转化为pdf的方法有

    1.利用openoffice提供的服务 (比较简单,但是转化的效果不太好)

    2.使用office提供的服务 (注:这在windows服务器上,并且服务器上面安装了版本比较高的office)

    下面重点介绍利用office服务将office文件转化为pdf

    1.php开启dcom扩展

    打开php.ini,搜索php_com_dotnet和php_com_dotnet:

    extension=php_com_dotnet.dll   //把前面的分号去掉
    com.allow_dcom = true  //改为true

    重启apache

    2.配置office组件服务

    .

    像这样的操作还有两个!!

    3.下面就该介绍将office文件转化为pdf的代码了

    (1)ppt转pdf代码

     1 public function ppt_to_pdf() {
     2         $srcfilename = 'E:/aa.ppt';
     3         $destfilename = 'E:/aa.pdf';
     4         try {
     5             if(!file_exists($srcfilename)){
     6                 return;
     7             }
     8             $ppt = new \COM("powerpoint.application") or die("Unable to instantiate Powerpoint");
     9             $presentation = $ppt->Presentations->Open($srcfilename, false, false, false);
    10             $presentation->SaveAs($destfilename,32,1);
    11             $presentation->Close();
    12             $ppt->Quit();
    13         } catch (\Exception $e) {
    14             if (method_exists($ppt, "Quit")){
    15                 $ppt->Quit();
    16             }
    17             return;
    18         }
    19     }

    (2)excel转pdf代码

    1     public function excel_to_pdf() {
     2         $srcfilename = 'E:/aa.xls';
     3         $destfilename = 'E:/aa.pdf';
     4         try {
     5             if(!file_exists($srcfilename)){
     6                 return;
     7             }
     8             $excel = new \COM("excel.application") or die("Unable to instantiate excel");
     9             $workbook = $excel->Workbooks->Open($srcfilename, null, false, null, "1", "1", true);
    10             $workbook->ExportAsFixedFormat(0, $destfilename);
    11             $workbook->Close();
    12             $excel->Quit();
    13         } catch (\Exception $e) {
    14              echo ("src:$srcfilename catch exception:" . $e->__toString());
    15             if (method_exists($excel, "Quit")){
    16                 $excel->Quit();
    17             }
    18             return;
    19         }
    20     }

    (3)word转pdf代码(其他的文本格式的文件也可以使用这个,例:txt文件)

    1     public function doc_to_pdf() {
     2         $srcfilename = 'E:/aa.doc';
     3         $destfilename = 'E:/aa.pdf';
     4         try {
     5             if(!file_exists($srcfilename)){
     6                 return;
     7             }
     8 
     9             $word = new \COM("word.application") or die("Can't start Word!");
    10             $word->Visible=0;
    11             $word->Documents->Open($srcfilename, false, false, false, "1", "1", true);
    12            
    13             $word->ActiveDocument->final = false;
    14             $word->ActiveDocument->Saved = true;
    15             $word->ActiveDocument->ExportAsFixedFormat(
    16                 $destfilename,
    17                 17,                         // wdExportFormatPDF
    18                 false,                      // open file after export
    19                 0,                          // wdExportOptimizeForPrint
    20                 3,                          // wdExportFromTo
    21                 1,                          // begin page
    22                 5000,                       // end page
    23                 7,                          // wdExportDocumentWithMarkup
    24                 true,                       // IncludeDocProps
    25                 true,                       // KeepIRM
    26                 1                           // WdExportCreateBookmarks
    27             );
    28             $word->ActiveDocument->Close();
    29             $word->Quit();
    30         } catch (\Exception $e) {
    31             if (method_exists($word, "Quit")){
    32                 $word->Quit();
    33             }
    34             return;
    35         }
    36     }

    以上就是php如何将office文件转pdf文件的详细内容,更多请关注php中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!
    专题推荐:php office pdf
    上一篇:php foreach如何修改数组值 下一篇:php文件不存在则创建的实现方法
    第12期线上周末培训班

    相关文章推荐

    • PHP如何使用mpdf将html页面转换pdf文件?• php如何去除末尾字符• php中构造方法是什么• php如何替换图片地址• php foreach如何修改数组值

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网