您正在使用 IPV4 [18.234.55.154] 访问本站,您本次已经查看了 1 页
用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器
[公益]保护绿色环境,构建和谐社会       悟空收录网      

【腾讯云】 爆款2核2G3M云服务器首年 61元,叠加红包再享折上折      
[公益] 地球是我家,绿化靠大家      
2024年 清明节 006
2024年 劳动节 033
2025年 元 旦 278
2025年 春 节 306
 
您现在的位置:首页 >> PHP >> 内容
本类新增
本类热门
PHP调用OpenOffice实现word转PDF的方法
内容摘要: 核心的代码如下:functionMakePropertyValue($name,$value,$osm){$oStruct=$osm-Bridge_GetStruct('com.sun.star.beans.PropertyValue');$oStruct-Name=$name;$oStruct-Value=$value;return$oStruct;}fu......
核心的代码如下:

functionMakePropertyValue($name,$value,$osm){

$oStruct=$osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");

$oStruct->Name=$name;

$oStruct->Value=$value;

return$oStruct;

}

functionword2pdf($doc_url,$output_url){

$osm=newCOM("com.sun.star.ServiceManager")ordie("PleasebesurethatOpenOffice.orgisinstalled.n");

$args=array(MakePropertyValue("Hidden",true,$osm));

$oDesktop=$osm->createInstance("com.sun.star.frame.Desktop");

$oWriterDoc=$oDesktop->loadComponentFromURL($doc_url,"_blank",0,$args);

$export_args=array(MakePropertyValue("FilterName","writer_pdf_Export",$osm));

$oWriterDoc->storeToURL($output_url,$export_args);

$oWriterDoc->close(true);

}

$doc_file=dirname(__FILE__)."/11.doc";//源文件,DOC或者WPS都可以

$output_file=dirname(__FILE__)."/11.pdf";//欲转PDF的文件名

$doc_file="file:///".$doc_file;

$output_file="file:///".$output_file;

$document->word2pdf($doc_file,$output_file);

用上述发现代码一直在报错

(!)Fatalerror:Uncaughtexception'com_exception'withmessage'<b>Source:</b>[automationbridge]<br/><b>Description:</b>com.sun.star.task.ErrorCodeIOException:'inI:phpStudyWWWDocPreviewtest2.phponline27

(!)com_exception:<b>Source:</b>[automationbridge]<br/><b>Description:</b>com.sun.star.task.ErrorCodeIOException:inI:phpStudyWWWDocPreviewtest2.phponline27

最后发现原来是转出路径的问题:通过调试得出上述代码的转出路径$output_file是file:///I:phpStudyWWWDocPreviewsdds.pdf。

然而storeToURL这个方法里面需要的路径是这样的:file:///I:/phpStudy/WWW/DocPreview/sdds.pdf。

因此只需要将$output_file的""替换为“/”

$doc_file=dirname(__FILE__)."/11.doc";//源文件,DOC或者WPS都可以

$output_file=dirname(__FILE__)."/11.pdf";//欲转PDF的文件名

$output_file=str_replace("\","/",$output_file);

$doc_file="file:///".$doc_file;

$output_file="file:///".$output_file;

$document->word2pdf($doc_file,$output_file);

版权声明:本内容来源于互联网,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
上一篇:PHP实现保存网站用户密码到css文件

 

下一篇:PHP 实现人民币小写转换成大写的方法及大小写转换函数

发布日期:2022/5/19
手机扫二维码直达本页
发布时间:13:15:02
点  击:9
录  入:齐天大圣
相关文章
Baidu
YiJiaCMS 7.3.8 build231228(MSSQL) 闽ICP备05000814号-1
本空间由腾讯云(轻量应用服务器)提供,Cloudflare提供加速防护
运行时间载入中.....