背景及编码思路
关于用OpenOffice的场景更多是将word中的内容另存为(转化)html。我的应用场景是将在线编辑器的内容保存为word格式,系细览转换为word、pdf的一种需求。
-
下载Openoffice(http://download.openoffice.org/index.html ),类似于windows office的一个套件,并额外支持服务的运行方式,可理解为数据库
-
下载Jodconverter( http://www.artofsolving.com/opensource/jodconverter),类似于jdbc
-
按照OpenOffice,并启动服务:soffice -headless -accept="socket,port=8100;urp;"
-
引入jodconverter的jar包,并编码第2章
开发过程中遇到的问题
public class OpenOfficeService {
private Logger logger = Logger.getLogger(this.getClass());
OpenOfficeConnection con = null;
public void convert(File sourceFile, File _targetFile) {
try {
if (con == null) {
con = new SocketOpenOfficeConnection(ip, port);
}
con.connect();
DocumentConverter converter = new OpenOfficeDocumentConverter(con);
converter.convert(sourceFile, _targetFile);
// DefaultDocumentFormatRegistry formatReg = new DefaultDocumentFormatRegistry();
// converter.convert(sourceFile, formatReg.getFormatByFileExtension("html"), _targetFile, formatReg.getFormatByFileExtension("pdf"));
} catch (ConnectException e) {
logger.error("OpenOffice异常", e);
try {
if (con != null) {
con.disconnect();
con = null;
}
} catch (Exception e1) {
logger.error(e);
}
}
}
public static void main(String[] args) {
OpenOfficeService openoffice = new OpenOfficeService();
// 生成odt,本质上可以用word打开(可以在下载时修改为doc文件,以屏蔽用户感觉到的差异),如果生成doc,则图片会丢失
openoffice.convert(new File("WebRoot/jsp/data/docs/a.html"), new File("WebRoot/jsp/data/docs/a.odt"));
// 生成pdf
openoffice.convert(new File("WebRoot/jsp/data/docs/a.html"), new File("WebRoot/jsp/data/docs/a.pdf"));
}
public void setIp(String ip) {
this.ip = ip;
}
public void setPort(int port) {
this.port = port;
}
private String ip = "127.0.0.1";
private int port = 8100;
}
过程中遇到的问题
html中的图片可以转化到pdf,但是在不能转化到word中,经测试可以转化到odt文件中,所以我在开发过程中实际上是由hmt转换为odt,再在下载的过程中将后缀改为doc格式,另外,html中的图片,最好与html文件放到同一目录下,引用方式为相对目录,也可以修改html的图片路径为绝对路径。
- 大小: 18.4 KB
分享到:
相关推荐
Java OpenOffice库是一种用于在Java应用程序中处理Office文档的强大工具,尤其在进行word和Excel到PDF的转换时。OpenOffice提供了API,使得开发者能够通过编程方式处理这些转换任务,而无需依赖用户界面或手动操作。...
本教程将详细讲解如何利用OpenOffice的API和C#编程语言来实现Word、Excel和PowerPoint文档转换为PDF格式。 一、OpenOffice的API简介 OpenOffice提供了一套名为UNO(Universal Network Objects)的接口,允许开发者...
本篇文章将详细介绍如何利用OpenOffice库在Java环境中将Word、Excel、PowerPoint等Microsoft Office文档转换为PDF格式。 首先,OpenOffice是一款开源的办公套件,它提供了一个称为UNO(Universal Network Objects)...
本文将深入探讨如何使用ASP.NET结合OpenOffice库来实现Word、Excel和PDF文档到PDF的转换,并在此过程中添加水印功能。OpenOffice是一款开源的办公软件套件,它提供了API,允许开发者通过编程方式与之交互,进行文档...
ASP.NET 使用 OpenOffice 转换文件至 PDF 在本篇文章中,我们将探讨如何使用 OpenOffice 将各种 Office 文档转换为 PDF 格式,这项技术可以应用于 ASP.NET 平台下。为了实现这项功能,我们需要安装 OpenOffice 和...
本篇将重点讲解如何利用OpenOffice API在Java环境中将Word文档转换为PDF文件。 OpenOffice是一个开源的办公套件,它提供了一个称为UNO(Universal Network Objects)的接口,允许开发者通过编程方式与OpenOffice...
此外,转换HTML的过程可能需要更复杂的设置,因为它涉及到更多格式和样式的问题。 总之,OpenOffice提供了一个强大且灵活的工具集,能够轻松地将Office文档转换为PDF和HTML。开发者还可以利用Java API实现自动化...
Java使用OpenOffice转换Office文档为PDF是一种常见的技术需求,尤其在企业级应用中,为了保持一致性和跨平台兼容性,可能会需要将Word、Excel或PowerPoint文档转换为PDF格式。以下将详细介绍如何在Java环境中利用...
标题“openoffice调用word生成html.rar”涉及的是一个Java编程项目,其目的是利用OpenOffice套件转换Word文档为HTML格式。OpenOffice是一款开源的办公软件,它支持多种文档格式的处理,包括创建、编辑和转换。在这个...
OpenOffice是一款开源的办公软件套件,它包含了处理文字、表格、演示文稿等多种...通过理解和利用OpenOffice的API,你可以构建自己的文件转换服务,实现从Word、Excel、PPT到PDF的无缝转换,从而满足在线预览的需求。
网站有许多转换pdf的代码.本人也用过office和wps,上传服务器期后出现了许多bug,最后选用openoffice实现最方便。前提服务器或电脑必须下载openoffice.具体配置文件参考:...
Word、Excel等常用文档格式通过OpenOffice转换为pdf及图片,亲测,可用。Word、Excel等常用文档格式通过OpenOffice转换为pdf及图片,亲测,可用。Word、Excel等常用文档格式通过OpenOffice转换为pdf及图片,亲测,可用...
标题中的"openoffice3doc转pdf"指的是使用OpenOffice 3.0版本将Microsoft Word(doc格式)文档转换成PDF格式。OpenOffice是一款开源的办公软件套件,它提供了文字处理、电子表格、演示文稿等多种功能,同时也支持...
标题提到的"office文档通过openoffice或者microsoft多线程转换成pdf文档"涉及到的技术主要包括办公软件API接口利用、多线程处理以及文件转换技术。首先,OpenOffice和Microsoft Office都提供了能够读取和操作Office...
本篇文章将深入探讨如何使用OpenOffice进行Word到PDF的转换,以及这一过程中的关键知识点。 首先,我们需要了解OpenOffice的基础。OpenOffice是由Apache基金会维护的免费软件,它包含了类似Microsoft Office的组件...
本例通过VB脚本使用openoffice将word转成PDF
将PDF转换为SWF可以使得内容更便于网络分享和观看。OpenOffice虽然不直接支持PDF转SWF,但我们可以通过第三方工具或插件实现这一过程。 JODConverter是一个强大的文件转换工具,它可以利用OpenOffice后台进行文件...
Entry.java这个类的原理是先通过OfficeToPDF.java把文档转成pdf,然后再通过Pdf2Jpg.java这个类把PDF转成JPG或者PNG,想转成什么格式图片在Pdf2Jpg.java这个类当中设置一下,代码经过测试,完全没有问题,如果碰到...
至于"WordPDF"这个压缩包文件,很可能包含的就是这个转换程序的源代码或者可执行文件。对于开发者来说,分析这个程序的源代码可以学习到如何利用OpenOffice API进行文件格式转换,而对于普通用户,可以直接使用这个...