php office文件(word/excel/ppt)转pdf文件
2017-09-21 16:19
555 查看
把代码放到了github上,点击进入
前阶段有个项目用到了线上预览功能,
关于预览office文件实现核心就是,把office文件(word,excel,ppt)转为pdf文件,
然后再把pdf文件经过pdf2html转为html文件进行预览。
利用openoffice的话,非常简单,不过效果不太好,转成的pdf样式会乱!
这里就不做介绍了。
下面我把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.php代码:
ppt转pdf代码
excel转ppt
word转pdf(其实文本格式的文件都可以用这个,比如:txt)
前阶段有个项目用到了线上预览功能,
关于预览office文件实现核心就是,把office文件(word,excel,ppt)转为pdf文件,
然后再把pdf文件经过pdf2html转为html文件进行预览。
利用openoffice的话,非常简单,不过效果不太好,转成的pdf样式会乱!
这里就不做介绍了。
下面我把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.php代码:
ppt转pdf代码
public function ppt_to_pdf() { $srcfilename = 'E:/aa.ppt'; $destfilename = 'E:/aa.pdf'; try { if(!file_exists($srcfilename)){ return; } $ppt = new \COM("powerpoint.application") or die("Unable to instantiate Powerpoint"); $presentation = $ppt->Presentations->Open($srcfilename, false, false, false); $presentation->SaveAs($destfilename,32,1); $presentation->Close(); $ppt->Quit(); } catch (\Exception $e) { if (method_exists($ppt, "Quit")){ $ppt->Quit(); } return; } }
excel转ppt
public function excel_to_pdf() { $srcfilename = 'E:/aa.xls'; $destfilename = 'E:/aa.pdf'; try { if(!file_exists($srcfilename)){ return; } $excel = new \COM("excel.application") or die("Unable to instantiate excel"); $workbook = $excel->Workbooks->Open($srcfilename, null, false, null, "1", "1", true); $workbook->ExportAsFixedFormat(0, $destfilename); $workbook->Close(); $excel->Quit(); } catch (\Exception $e) { echo ("src:$srcfilename catch exception:" . $e->__toString()); if (method_exists($excel, "Quit")){ $excel->Quit(); } return; } }
word转pdf(其实文本格式的文件都可以用这个,比如:txt)
public function doc_to_pdf() { $srcfilename = 'E:/aa.doc'; $destfilename = 'E:/aa.pdf'; try { if(!file_exists($srcfilename)){ return; } $word = new \COM("word.application") or die("Can't start Word!"); $word->Visible=0; $word->Documents->Open($srcfilename, false, false, false, "1", "1", true); $word->ActiveDocument->final = false; $word->ActiveDocument->Saved = true; $word->ActiveDocument->ExportAsFixedFormat( $destfilename, 17, // wdExportFormatPDF false, // open file after export 0, // wdExportOptimizeForPrint 3, // wdExportFromTo 1, // begin page 5000, // end page 7, // wdExportDocumentWithMarkup true, // IncludeDocProps true, // KeepIRM 1 // WdExportCreateBookmarks ); $word->ActiveDocument->Close(); $word->Quit(); } catch (\Exception $e) { if (method_exists($word, "Quit")){ $word->Quit(); } return; } }
相关文章推荐
- windows环境下 php 将office文件(word/excel/ppt)转化为pdf(转)
- Android遍历获取Office格式(Word,Excel,PPT,PDF)的文件并打开
- C#调用OFFICE转换WORD,EXCEL,PPT文件为PDF
- 如何通过WPS 2013 API 将Office(Word、Excel和PPT)文件转PDF文件
- 如何通过WPS 2013 API 将Office(Word、Excel和PPT)文件转PDF文件
- Android遍历获取Office格式(Word,Excel,PPT,PDF)的文件并打开
- 将Office(如:Word、Excel、PPT 等)文件转PDF(通过OpenOffice实现)
- Android遍历获取Office格式(Word,Excel,PPT,PDF)的文件并打开
- Android应用内展示word、excel、pdf、ppt等文件(讯的Tbs)
- Java程序员从笨鸟到菜鸟之(一百零三)java操作office和pdf文件(一)java读取word,excel和pdf文档内容
- android用于打开各种文件的intent,包括以下文件PDF,PPT,WORD,EXCEL,CHM,HTML,TEXT,AUDIO,VIDEO
- Press C#使用指定打印机打印Word,Excel等Office文件和打印PDF文件的代码 (转)
- Spire.Office for .NET(Word、Excel、PPT、PDF等)
- Ubuntu 服务器 PHP实现word、excel、ppt、pdf 等文档在线阅读功能的实现
- Java程序员从笨鸟到菜鸟之(一百零三)java操作office和pdf文件(一)java读取word,excel和pdf文档内容
- android用于打开各种文件的intent,包括以下文件PDF,PPT,WORD,EXCEL,CHM,HTML,TEXT,AUDIO,VIDEO
- android打开pdf ppt word excel chm html text 文件的intent
- 笔记-Android中打开各种格式的文件(apk、word、excel、ppt、pdf、音视频、图片等)
- office 文件 (Word / excel / ppt / access) 文件修复
- 使用Spire.Office for .NET(Word、Excel、PPT、PDF等)的初步感受