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 相关文章推荐
从零开始 教你如何搭建Discuz!4.1论坛
Jul 07 PHP
Zend studio for eclipse中使php可以调用mysql相关函数的设置方法
Oct 13 PHP
php 记录进行累加并显示总时长为秒的结果
Nov 04 PHP
php判断正常访问和外部访问的示例
Feb 10 PHP
php格式化时间戳显示友好的时间实现思路及代码
Oct 23 PHP
thinkphp实现发送邮件密码找回功能实例
Dec 01 PHP
php实现以只读方式打开文件的方法
Mar 16 PHP
PHP防盗链的基本思想 防盗链的设置方法
Sep 25 PHP
php上传图片获取路径及给表单字段赋值的方法
Jan 23 PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 PHP
php获取手机端的号码以及ip地址实例代码
Sep 12 PHP
PHP INT类型在内存中占字节详解
Jul 20 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读取30天之内的根据算法排序的代码
2008/04/06 PHP
国外比较好的几个的Php开源建站平台小结
2010/04/22 PHP
PHP中usort在值相同时改变原始位置问题的解决方法
2011/11/27 PHP
麦鸡的TAB切换功能结合了javascript和css
2007/12/17 Javascript
表单JS弹出填写提示效果代码
2011/04/16 Javascript
通过JS获取用户本地图片路径并显示的代码
2012/02/16 Javascript
jquery插件制作 表单验证实现代码
2012/08/17 Javascript
js判断样式className同时增加class或删除class
2013/01/30 Javascript
jQuery判断元素是否存在的可靠方法
2014/05/06 Javascript
jQuery晃动层特效实现方法
2015/03/09 Javascript
node.js cookie-parser 中间件介绍
2016/06/06 Javascript
Javascript es7中比较实用的两个方法示例
2017/07/21 Javascript
Vue Cli与BootStrap结合实现表格分页功能
2017/08/18 Javascript
JS路由跳转的简单实现代码
2017/09/21 Javascript
js 获取json数组里面数组的长度实例
2017/10/31 Javascript
Typescript的三种运行方式(小结)
2019/09/18 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
解决Element中el-date-picker组件不回填的情况
2020/11/07 Javascript
centos系统升级python 2.7.3
2014/07/03 Python
Python 迭代器与生成器实例详解
2017/05/18 Python
Python生成密码库功能示例
2017/05/23 Python
pandas 数据实现行间计算的方法
2018/06/08 Python
python命令行工具Click快速掌握
2019/07/04 Python
对python中的装包与解包实例详解
2019/08/24 Python
Selenium向iframe富文本框输入内容过程图解
2020/04/10 Python
使用matlab 判断两个矩阵是否相等的实例
2020/05/11 Python
俄罗斯家居用品购物网站:Евродом
2020/11/21 全球购物
专业幼师实习生自我鉴定范文
2013/12/08 职场文书
七一建党节演讲稿
2014/09/11 职场文书
班主任经验交流材料
2014/12/16 职场文书
父亲节活动总结
2015/02/12 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
被委托人身份证明
2015/08/07 职场文书
MySQL 隔离数据列和前缀索引的使用总结
2021/05/14 MySQL
jQuery实现广告显示和隐藏动画
2021/07/04 jQuery
python+opencv实现目标跟踪过程
2022/06/21 Python