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实现分页的一个示例
Oct 09 PHP
PHP 身份证号验证函数
May 07 PHP
PHP 异步执行方法,模拟多线程的应用分析
Jun 03 PHP
深入探讨:Nginx 502 Bad Gateway错误的解决方法
Jun 03 PHP
php实现文件编码批量转换
Mar 10 PHP
php防止站外远程提交表单的方法
Oct 20 PHP
php+xml实现在线英文词典之添加词条的方法
Jan 23 PHP
[原创]php逐行读取txt文件写入数组的方法
Jul 02 PHP
用PHP写的一个冒泡排序法的函数简单实例
May 26 PHP
PHP+Ajax 检测网络是否正常实例详解
Dec 16 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
Nov 08 PHP
laravel框架 api自定义全局异常处理方法
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中全局变量global的使用演示代码
2011/05/18 PHP
PHP中读取文件的8种方法和代码实例
2014/08/05 PHP
thinkphp 抓取网站的内容并且保存到本地的实例详解
2017/08/25 PHP
Yii框架小部件(Widgets)用法实例详解
2020/05/15 PHP
Javascript实例教程(19) 使用HoTMetal(6)
2006/12/23 Javascript
dropdownlist之间的互相联动实现(显示与隐藏)
2009/11/24 Javascript
jQuery Selector选择器小结
2010/05/06 Javascript
用JavaScript对JSON进行模式匹配(Part 1-设计)
2010/07/17 Javascript
JS中的public和private对象,即static修饰符
2012/01/18 Javascript
node.js中的定时器nextTick()和setImmediate()区别分析
2014/11/26 Javascript
基于jQuery实现二级下拉菜单效果
2016/02/01 Javascript
Javascript 普通函数和构造函数的区别
2016/11/05 Javascript
jquery实现输入框实时输入触发事件代码
2016/12/21 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
2017/05/26 Javascript
基于mpvue搭建微信小程序项目框架的教程详解
2019/04/10 Javascript
Vue解决echart在element的tab切换时显示不正确问题
2020/08/03 Javascript
微信小程序接入vant Weapp组件的详细步骤
2020/10/28 Javascript
[26:52]LGD vs EG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python根据时间生成mongodb的ObjectId的方法
2015/03/13 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
2016/07/02 Python
Python学习教程之常用的内置函数大全
2017/07/14 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
python使用folium库绘制地图点击框
2018/09/21 Python
对python requests发送json格式数据的实例详解
2018/12/19 Python
python 随机森林算法及其优化详解
2019/07/11 Python
opencv3/C++实现视频读取、视频写入
2019/12/11 Python
HTML5 实现图片上传预处理功能
2020/02/06 HTML / CSS
荷兰在线钓鱼商店:Raven
2019/06/26 全球购物
纯净、自信、100%的羊绒服装:360Cashmere
2021/02/20 全球购物
计算机专业职业规划
2014/02/28 职场文书
教师应聘自荐信范文
2014/03/14 职场文书
公司总经理岗位职责
2014/03/15 职场文书
工作检讨书怎么写
2015/01/23 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
图解排序算法之希尔排序Java实现
2021/06/26 Java/Android