`
zhang_637
  • 浏览: 15122 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

利用OpenOffice对html、word、pdf进行转换

阅读更多

 

背景及编码思路


关于用OpenOffice的场景更多是将word中的内容另存为(转化)html。我的应用场景是将在线编辑器的内容保存为word格式,系细览转换为wordpdf的一种需求。
  1.  下载Openofficehttp://download.openoffice.org/index.html ),类似于windows office的一个套件,并额外支持服务的运行方式,可理解为数据库
  2. 下载Jodconverter http://www.artofsolving.com/opensource/jodconverter),类似于jdbc 
  3. 按照OpenOffice,并启动服务:soffice -headless -accept="socket,port=8100;urp;"
  4. 引入jodconverterjar包,并编码第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
1
0
分享到:
评论
3 楼 yangdengxian 2016-05-19  
大神,html中的图片转化到pdf中,如何实现,请赐教
2 楼 zhang_637 2012-05-14  
bluerose 写道
大哥  中文是乱码 我在windows下
请问你遇到了么 怎么解决的 谢谢

没有遇到,不知道你的源文件编码是否是本地编码?
1 楼 bluerose 2012-05-04  
大哥  中文是乱码 我在windows下
请问你遇到了么 怎么解决的 谢谢

相关推荐

    java OpenOffice wordExcel转换PDF

    Java OpenOffice库是一种用于在Java应用程序中处理Office文档的强大工具,尤其在进行word和Excel到PDF的转换时。OpenOffice提供了API,使得开发者能够通过编程方式处理这些转换任务,而无需依赖用户界面或手动操作。...

    openoffice的C#应用各种文档格式转换pdf

    本教程将详细讲解如何利用OpenOffice的API和C#编程语言来实现Word、Excel和PowerPoint文档转换为PDF格式。 一、OpenOffice的API简介 OpenOffice提供了一套名为UNO(Universal Network Objects)的接口,允许开发者...

    Java利用OpenOffice将word等office文档转换成PDF(附件在最后)

    本篇文章将详细介绍如何利用OpenOffice库在Java环境中将Word、Excel、PowerPoint等Microsoft Office文档转换为PDF格式。 首先,OpenOffice是一款开源的办公套件,它提供了一个称为UNO(Universal Network Objects)...

    asp.net利用OpenOffice转换WORD/EXCEL/PDF为PDF,加水印源码

    本文将深入探讨如何使用ASP.NET结合OpenOffice库来实现Word、Excel和PDF文档到PDF的转换,并在此过程中添加水印功能。OpenOffice是一款开源的办公软件套件,它提供了API,允许开发者通过编程方式与之交互,进行文档...

    ASP.NET利用OpenOffice转换文件至PDF

    ASP.NET 使用 OpenOffice 转换文件至 PDF 在本篇文章中,我们将探讨如何使用 OpenOffice 将各种 Office 文档转换为 PDF 格式,这项技术可以应用于 ASP.NET 平台下。为了实现这项功能,我们需要安装 OpenOffice 和...

    Java使用OpenOffice将word转换为pdf文件

    本篇将重点讲解如何利用OpenOffice API在Java环境中将Word文档转换为PDF文件。 OpenOffice是一个开源的办公套件,它提供了一个称为UNO(Universal Network Objects)的接口,允许开发者通过编程方式与OpenOffice...

    OpenOffice转换Office文档为PDF、HTML

    此外,转换HTML的过程可能需要更复杂的设置,因为它涉及到更多格式和样式的问题。 总之,OpenOffice提供了一个强大且灵活的工具集,能够轻松地将Office文档转换为PDF和HTML。开发者还可以利用Java API实现自动化...

    Java用OpenOffice将office转换为PDF

    Java使用OpenOffice转换Office文档为PDF是一种常见的技术需求,尤其在企业级应用中,为了保持一致性和跨平台兼容性,可能会需要将Word、Excel或PowerPoint文档转换为PDF格式。以下将详细介绍如何在Java环境中利用...

    openoffice调用word生成html.rar

    标题“openoffice调用word生成html.rar”涉及的是一个Java编程项目,其目的是利用OpenOffice套件转换Word文档为HTML格式。OpenOffice是一款开源的办公软件,它支持多种文档格式的处理,包括创建、编辑和转换。在这个...

    OpenOffice实现word、excel、ppt等文本文件转换pdf

    OpenOffice是一款开源的办公软件套件,它包含了处理文字、表格、演示文稿等多种...通过理解和利用OpenOffice的API,你可以构建自己的文件转换服务,实现从Word、Excel、PPT到PDF的无缝转换,从而满足在线预览的需求。

    php借助openoffice把word转换pdf

    网站有许多转换pdf的代码.本人也用过office和wps,上传服务器期后出现了许多bug,最后选用openoffice实现最方便。前提服务器或电脑必须下载openoffice.具体配置文件参考:...

    Word、Excel等常用文档格式通过OpenOffice转换为pdf及图片

    Word、Excel等常用文档格式通过OpenOffice转换为pdf及图片,亲测,可用。Word、Excel等常用文档格式通过OpenOffice转换为pdf及图片,亲测,可用。Word、Excel等常用文档格式通过OpenOffice转换为pdf及图片,亲测,可用...

    openoffice3doc转pdf

    标题中的"openoffice3doc转pdf"指的是使用OpenOffice 3.0版本将Microsoft Word(doc格式)文档转换成PDF格式。OpenOffice是一款开源的办公软件套件,它提供了文字处理、电子表格、演示文稿等多种功能,同时也支持...

    office文档通过openoffice或者microsoft多线程转换成pdf文档并通过pdfjs显示

    标题提到的"office文档通过openoffice或者microsoft多线程转换成pdf文档"涉及到的技术主要包括办公软件API接口利用、多线程处理以及文件转换技术。首先,OpenOffice和Microsoft Office都提供了能够读取和操作Office...

    openoffice--word转PDF

    本篇文章将深入探讨如何使用OpenOffice进行Word到PDF的转换,以及这一过程中的关键知识点。 首先,我们需要了解OpenOffice的基础。OpenOffice是由Apache基金会维护的免费软件,它包含了类似Microsoft Office的组件...

    VBS参考-使用openoffice将word转成PDF

    本例通过VB脚本使用openoffice将word转成PDF

    word(office)转换PDF转swf

    将PDF转换为SWF可以使得内容更便于网络分享和观看。OpenOffice虽然不直接支持PDF转SWF,但我们可以通过第三方工具或插件实现这一过程。 JODConverter是一个强大的文件转换工具,它可以利用OpenOffice后台进行文件...

    java利用openoffice,把word,execl,ppt转成图片,

    Entry.java这个类的原理是先通过OfficeToPDF.java把文档转成pdf,然后再通过Pdf2Jpg.java这个类把PDF转成JPG或者PNG,想转成什么格式图片在Pdf2Jpg.java这个类当中设置一下,代码经过测试,完全没有问题,如果碰到...

    word转换PDF

    至于"WordPDF"这个压缩包文件,很可能包含的就是这个转换程序的源代码或者可执行文件。对于开发者来说,分析这个程序的源代码可以学习到如何利用OpenOffice API进行文件格式转换,而对于普通用户,可以直接使用这个...

Global site tag (gtag.js) - Google Analytics