windows环境下 php 将office文件(word/excel/ppt)转化为pdf(转)
将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组件服务
.
像这样的操作还有两个!!
3.下面就该介绍将office文件转化为pdf的代码了
(1)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;
}
}
(2)excel转pdf代码
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;
}
}
(3)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;
}
}
注:本文参考地址:http://blog.csdn.net/sangjinchao/article/details/78053545,如需转载请注明出处:https://www.cnblogs.com/zhuchenglin/p/7586170.html
windows环境下 php 将office文件(word/excel/ppt)转化为pdf(转)的更多相关文章
- php 将office文件(word/excel/ppt)转化为pdf(windows和linux只要安装对应组件应该就行)
一.配置环境 (1)配置php.ini 添加:extension=php_com_dotnet.dll com.allow_dcom = true // 去掉号,改为true 重启环境 (2) 安装 ...
- windows环境下svn同步web文件[转]
windows环境下svn同步web文件 SVN在团队开发中使用非常普遍,是一个很方便的版本控制系统. 如果要是能将SVN服务器上的数据自动发布到Web服务器,那将是整个项目开发.测试更加便捷.利用S ...
- Office系列---将Office文件(Word、PPT、Excel)转换为PDF文件,提取Office文件(Word、PPT)中的所有图片
将Office文件转换为PDF文件,提取Office文件中的所有图片 1.Office系列---将Office文件(Word.PPT.Excel)转换为PDF文件 1.1 基于Office实现的解决方 ...
- java 如何将 word,excel,ppt如何转pdf --openoffice (1)
承上启下,可折叠 上一篇说的是:服务器是windows server时,用jacob将msoffice(指的是word,excel,ppt)转换成pdf. 若被部署项目的服务器是centOS等linu ...
- NPOI在无Office环境下,对Office文件的操作
在做项目的时候,经常会遇到对 Office的操作,但有时候会没有Office环境,因此给大家介绍一个思路,在没有Office环境下,对Office的处理. NPOI,顾名思义,就是POI的.NET版本 ...
- Windows环境下C++中关于文件结束符的问题
参考资料:http://www.cnblogs.com/day-dayup/p/3572374.html 一.前言 在不同的OS环境下,程序中对应的文件结束符有所不一样,根据<C++ Prime ...
- windows环境下备份与恢复,与文件拷贝
mySQL数据库在windows环境下备份与恢复 解压版需进入数据库安装目录.安装版可以忽略本步骤: 1.先在运行中输入CMD,启动命令行2.进入Mysql的Bin目录:E:\Program File ...
- Office系列(2)---提取Office文件(Word、PPT)中的所有图片
回顾一下上文结尾的问题:如何给文档设置一个合适的封面图?其中一个解决方案就是,获取Office文件内部的图片作为封面.这里就详细介绍下获取图片的几种方式,以及他们各自的优缺点. PS:因为之前用VST ...
- Office系列(1)---将Office文件(Word、PPT、Excel)转换为PDF文件
需求: 将Office文件作为文章并在网页上预览,主要为(Word.PPT.Excel)3种类型文件. 研究了一下,找到了两种解决方案 直接调用微软的在线预览功能实现(预览前提:预览资源必须可以直接通 ...
随机推荐
- 深度学习框架Tensor张量的操作使用
- 重点掌握基本张量使用及与numpy的区别 - 掌握张量维度操作(拼接.维度扩展.压缩.转置.重复……) numpy基本操作: numpy学习4:NumPy基本操作 NumPy 教程 1. Tens ...
- 工厂模式 Factory MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- mysql导入自定义函数不成功的解决方法
进入mysql控制台:mysql -uroot -p set global log_bin_trust_function_creators=1;
- python写入excel(xlswriter)--生成图表
一.折线图: # -*- coding:utf-8 -*- import xlsxwriter # 创建一个excel workbook = xlsxwriter.Workbook("cha ...
- grid - 网格项目对齐方式(Box Alignment)
CSS的Box Alignment Module补充了网格项目沿着网格行或列轴对齐方式. <view class="grid"> <view class='ite ...
- 有钱人都用iphone?
身边的朋友用iphone, 大家都会调侃真有钱. 大数据显示, 人家是真的有钱. 看看来自腾讯移动分析数据 你玩过抖音就知道, 拍视频, 传视频的过的看着都挺滋润的. 反观用安卓的用户, 前20个应用 ...
- elasticsearch外网访问设置
默认情况下安装elasticsearch之后是无法进行外网访问的,可以通过设置来完成这一目的 1.更改配置文件 [***@elk01 ~]$ vim elk/config/elasticsearch. ...
- html5利用websocket完成的推送功能(tomcat)
html5利用websocket完成的推送功能(tomcat) 利用websocket和java完成的消息推送功能,服务器用的是tomcat7.0.42,一些东西是自己琢磨的,也不知道恰不恰当,不恰当 ...
- CentOS 7.2编译安装PHP7
原文: https://typecodes.com/web/centos7compilephp7.html?utm_source=tuicool&utm_medium=referralPHP官 ...
- PHP-问题处理验证码无法显示出来
1.问题 今天重新安装了ubuntu,PHP,MySQL,Apache,到测试CMS项目时发生一个错误: 验证码无法显示出来. 2.解决: 2.1 使用 phpinfo检查: phpinfo(); 在 ...