office转pdf 文件路径 php,php如何将office文件转pdf文件

本文介绍了如何在PHP中利用COM扩展将Office文件(PPT、Excel、Word)转换为PDF。首先,需要开启dcom扩展并在php.ini中配置。然后,通过创建并操作COM对象,调用Office应用程序的方法来实现转换。转换代码分别展示了PPT、Excel和Word转PDF的具体步骤。这种方法适用于Windows服务器上安装了较高版本Office的情况。
摘要由CSDN通过智能技术生成

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

7c91059eae1e7ad78b4440b6e430d4f1.png

将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组件服务

.

52c3b912190f5829a82705f290ecdd8c.png

937b779721209c76a628a5a744c2e496.png

3e676a08eb2b5fc3a0f21f5b49c6059f.png

72af188d1e7e649ac60941d52632552d.png

216544182faf21910efff623f6d753b6.png

b7c539e27f94594d9ddb1fec886e557e.png

1253f1ae093ba24fbdd98bae4a41d12b.png

47c0cfc50cb0586610ee6129c539924a.png

f9f5dceac2d9519b095f3a9d1ddd3989.png

6ce48bd26cbd0d31ee736b27421bb3c0.png

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

2a31bc35f6a517df6bd063b495aa47c4.png

1e735e61ebdb74bd42e5b559e4aba815.png

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 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值