php转换上传word文件为PDF的方法【基于COM组件】


Posted in PHP onJune 10, 2019

本文实例讲述了php转换上传word文件为PDF的方法。分享给大家供大家参考,具体如下:

以前用过office组件转换上传文件word同时转换为html文件,这次要将word文件转换为pdf格式,网上的方法很多,也很麻烦,也不想在服务器上再安装第三方软件,花了好几天的时间,终于在一个网站上,发现在了原来用COM组件,在转换为html文件的同时,也能转换为pdf格式,而自己服务器上已经安装了office2010,这样只需要改写一下以前的几行代码就可以,代码如下:

$word = new COM("Word.Application") or die ("Could not initialise Object.");
// set it to 1 to see the MS Word window (the actual opening of the document)
$word->Visible = 0;
// recommend to set to 0, disables alerts like "Do you want MS Word to be the default .. etc"
$word->DisplayAlerts = 0;
// open the word 2007-2013 document 
$word->Documents->Open('yourdocument.docx');//这个是绝对文件地址,如c:\www\1.txt这样的地址才通过
// save it as word 2003
$word->ActiveDocument->SaveAs('newdocument.doc');//转换成doc格式
// convert word 2007-2013 to PDF
$word->ActiveDocument->ExportAsFixedFormat('yourdocument.pdf', 17, false, 0, 0, 0, 0, 7, true, true, 2, true, true, false);//转换为pdf模式
// quit the Word process
$word->Quit(false);
// clean up
unset($word);

以上代码的原始地址:http://stackoverflow.com/questions/5538584/convert-word-doc-docx-and-excel-xls-xlsx-to-pdf-with-php

我把以上的代码做成了一个函数,代码如下:

function word2pdf($lastfnamedoc,$lastfnamepdf)
{
  $word = new COM("Word.Application") or die ("Could not initialise Object.");
 // set it to 1 to see the MS Word window (the actual opening of the document)
 $word->Visible = 0;
 // recommend to set to 0, disables alerts like "Do you want MS Word to be the default .. etc"
 $word->DisplayAlerts = 0;
 // open the word 2007-2013 document 
 // $word->Documents->Open('3.docx');
// $wordname='D:/www/fa/3.doc';
  $word->Documents->Open($lastfnamedoc);
 // save it as word 2003
// $word->ActiveDocument->SaveAs('4.doc');
 // convert word 2007-2013 to PDF
 // $pdfname='D:/www/fa/3.pdf';
 $word->ActiveDocument->ExportAsFixedFormat($lastfnamepdf, 17, false, 0, 0, 0, 0, 7, true, true, 2, true, true, false);
 // quit the Word process
 $word->Quit(false);
 // clean up
 unset($word);
}

我的是doc文件直接换pdf文件,代码是文件的地址我服务器的全是绝对地址,否则文件通不过!

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP COOKIE设置为浏览器进程
Jun 21 PHP
PHP简洁函数小结
Aug 12 PHP
php文件怎么打开 如何执行php文件
Dec 21 PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
May 10 PHP
CodeIgniter框架过滤HTML危险代码
Jun 12 PHP
php中file_get_contents与curl性能比较分析
Nov 08 PHP
Java和PHP在Web开发方面对比分析
Mar 01 PHP
typecho插件编写教程(二):写一个新插件
May 28 PHP
php ajax异步读取rss文档数据
Mar 29 PHP
php数据序列化测试实例详解
Aug 12 PHP
PHP微信开发之微信录音临时转永久存储
Jan 26 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
Oct 11 PHP
php简单计算权重的方法示例【适合抽奖类应用】
Jun 10 #PHP
PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】
Jun 08 #PHP
php使用scandir()函数扫描指定目录下所有文件示例
Jun 08 #PHP
php中目录操作opendir()、readdir()及scandir()用法示例
Jun 08 #PHP
php中字符串和整数比较的操作方法
Jun 06 #PHP
使用PHPWord生成word文档的方法详解
Jun 06 #PHP
php/JS实现的生成随机密码(验证码)功能示例
Jun 06 #PHP
You might like
PHP类的使用 实例代码讲解
2009/12/28 PHP
php自动给文章加关键词链接的函数代码
2012/11/29 PHP
[原创]php逐行读取txt文件写入数组的方法
2015/07/02 PHP
PHP实现补齐关闭的HTML标签
2016/03/22 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
用javascript实现读取txt文档的脚本
2007/07/20 Javascript
JS+css 图片自动缩放自适应大小
2013/08/08 Javascript
JQuery实现倒计时按钮具体方法
2013/11/14 Javascript
json的定义、标准格式及json字符串检验
2014/05/11 Javascript
推荐JavaScript实现继承的最佳方式
2014/11/11 Javascript
jQuery中Ajax的load方法详解
2015/01/14 Javascript
javascript 动态修改css样式方法汇总(四种方法)
2015/08/27 Javascript
JavaScript中字符串与Unicode编码互相转换的实现方法
2015/12/18 Javascript
javascript函数自动执行常用方法汇总
2016/03/28 Javascript
jQuery如何获取动态添加的元素
2016/06/24 Javascript
基于Bootstrap框架菜鸟入门教程(推荐)
2017/09/17 Javascript
webpack之devtool详解
2018/02/10 Javascript
基于JS实现web端录音与播放功能
2019/04/17 Javascript
vue响应式更新机制及不使用框架实现简单的数据双向绑定问题
2019/06/27 Javascript
基于Layui自定义模块的使用方法详解
2019/09/14 Javascript
简单介绍Python中的struct模块
2015/04/28 Python
python实现清屏的方法
2015/04/30 Python
Python入门_浅谈逻辑判断与运算符
2017/05/16 Python
Python pandas实现excel工作表合并功能详解
2019/08/29 Python
python3.7 openpyxl 删除指定一列或者一行的代码
2019/10/08 Python
Python环境搭建过程从安装到Hello World
2021/02/05 Python
美国网上订购鲜花:FTD
2016/09/23 全球购物
竟聘演讲稿范文
2013/12/31 职场文书
幼儿园中秋节活动方案
2014/02/06 职场文书
社区护士演讲稿
2014/08/27 职场文书
产品委托授权书范本
2014/09/16 职场文书
2015新员工试用期工作总结
2014/12/12 职场文书
2015年学生资助工作总结
2015/05/25 职场文书
羊脂球读书笔记
2015/06/30 职场文书
2017大学生寒假社会实践心得体会
2016/01/14 职场文书
vue 实现上传组件
2021/05/31 Vue.js