博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows环境下 php 将office文件(word/excel/ppt)转化为pdf(转)
阅读量:5272 次
发布时间:2019-06-14

本文共 3538 字,大约阅读时间需要 11 分钟。

将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,                         // wdExportFormatPDF18                 false,                      // open file after export19                 0,                          // wdExportOptimizeForPrint20                 3,                          // wdExportFromTo21                 1,                          // begin page22                 5000,                       // end page23                 7,                          // wdExportDocumentWithMarkup24                 true,                       // IncludeDocProps25                 true,                       // KeepIRM26                 1                           // WdExportCreateBookmarks27             );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     }

 

注:本文参考地址:

转载于:https://www.cnblogs.com/zhuchenglin/p/7586170.html

你可能感兴趣的文章
Cracking the code interview
查看>>
linux命令 rpm
查看>>
OMG: daily scrum nine
查看>>
【蓝桥杯】历届试题 连号区间数(运行超时)
查看>>
交换机练习的心得
查看>>
JavaScript数组学习总结
查看>>
node.js
查看>>
配置 Squid Server
查看>>
PHP学习笔记之批量删除
查看>>
第17章 Redis概述
查看>>
MyBatis的关联映射和动态SQL
查看>>
saxon 处理xslt
查看>>
Navicat 连接远程数据库报错:1130 - Host "XX.XX.XX.XX" is not allowed to connect to this MySQL server...
查看>>
【leetcode 简单】 第八十一题 4的幂
查看>>
Django学习网站
查看>>
ghost版win7安装
查看>>
Vue.js2.0快速入门笔记
查看>>
数据库分库分表
查看>>
java 中的字符串连接 比较
查看>>
ASIHTTPRequest类库简介和使用说明
查看>>