如何使用java以编程方式创建odt文件?
如何使用 Java 以编程方式创建 odt (LibreOffice/OpenOffice Writer) 文件?一个“hello world”的例子就足够了。我查看了 OpenOffice 网站,但文档不清楚。
How can I create an odt (LibreOffice/OpenOffice Writer) file with Java programmatically? A "hello world" example will be sufficient. I looked at the OpenOffice website but the documentation wasn't clear.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
查看ODFDOM - OpenDocument API
稍后
截至撰写本文时(2016 年 2 月),我们被告知这些类已被弃用......很大的时间,以及
OdfTextDocument
API文档告诉你:这意味着您的项目中仍然包含相同的活动 .jar 文件,
simple-odf-0.8.1-incubating-jar-with-dependency.jar
,但您希望解压以下 .jar获取文档:simple-odf-0.8.1-incubating-javadoc.jar
,而不是odfdom-java-0.8.10-incubating-javadoc.jar
。顺便说一句,文档链接下载了 .zip 中的一堆 jar 文件,其中显示“0.6.1”...但里面的大部分内容似乎更像 0.8.1。我不知道为什么他们在“已弃用”类的文档中说“自 0.8.8 起”:几乎所有内容都已标记为“已弃用”。
与上述等效的简单代码如下:
PS 我使用 Jython,但 Java 应该是显而易见的。
Take a look at ODFDOM - the OpenDocument API
later
As of this writing (2016-02), we are told that these classes are deprecated... big time, and the
OdfTextDocument
API documentation tells you:This means you still include the same active .jar file in your project,
simple-odf-0.8.1-incubating-jar-with-dependencies.jar
, but you want to be unpacking the following .jar to get the documentation:simple-odf-0.8.1-incubating-javadoc.jar
, rather thanodfdom-java-0.8.10-incubating-javadoc.jar
.Incidentally, the documentation link downloads a bunch of jar files inside a .zip which says "0.6.1"... but most of the stuff inside appears to be more like 0.8.1. I have no idea why they say "as of 0.8.8" in the documentation for the "deprecated" classes: just about everything is already marked deprecated.
The equivalent simple code to the above is then:
PS am using Jython, but the Java should be obvious.
我还没有尝试过,但使用 JOpenDocument 可能是一个选择。 (它似乎是一个纯Java库,用于生成OpenDocument文件。)
I have not tried it, but using JOpenDocument may be an option. (It seems to be a pure Java library to generate OpenDocument files.)
先前给出的解决方案的补充是 JODReports,它允许以 ODT 格式创建 Office 文档和报告(从模板,使用 LibreOffice/OpenOffice.org Writer 字处理器编写)。
或者,可以使用 JODConverter 将文档转换为 PDF、Word、RTF 等。
编辑/更新
在 GitHub 上, ansgarkonermann/jodreports-examples 是一个使用 JODReports 的示例项目(不包含- 简单的格式化案例)。
A complement of previously given solutions would be JODReports, which allows creating office documents and reports in ODT format (from templates, composed using the LibreOffice/OpenOffice.org Writer word processor).
Optionally the documents can then be converted to PDF, Word, RTF, etc. with JODConverter.
Edit/update
On GitHub, ansgarkonermann/jodreports-examples is a sample project using JODReports (with non-trivial formatting cases).
我编写了一个 jruby DSL,用于以编程方式操作 ODF 文档。
https://github.com/noah/ocelot
它不是严格意义上的 java,但它的目标是更简单比 ODFDOM 更适合使用。
创建 hello world 文档非常简单:
还有一些示例(包括一两个电子表格示例) 这里。
I have written a jruby DSL for programmatically manipulating ODF documents.
https://github.com/noah/ocelot
It's not strictly java, but it aims to be much simpler to use than the ODFDOM.
Creating a hello world document is as easy as:
There are a few more examples (including a spreadsheet example or two) here.
ODF Toolkit 项目(代码托管于 Github) 是前 ODFDOM 项目的新家,直到 2018 年 11 月 27 日为止 Apache 孵化器项目。
The ODF Toolkit project (code hosted at Github) is the new home of the former ODFDOM project, which was until 2018-11-27 a Apache Incubator project.
我一直在为自己寻找这个问题的答案。我正在开发一个用于生成不同格式文档的项目,并且我非常需要库来生成 ODT 文件。
我终于可以说,带有最新版本 simple-odf 库的 ODFToolkit 是生成文本文档的答案。
您可以在这里找到官方页面:
Apache ODF 工具包(孵化)- 简单 API
这是 一个页面下载0.8.1版本(Simple API的最新版本),因为我在官方页面没有找到最新版本,只有0.6.1版本
,在这里你可以找到Apache ODF 工具包(孵化)食谱
I have been searching for an answer about this question for myself. I am working on a project for generating documents with different formats and I was in a bad need for library to generate ODT files.
I finally can say the that ODFToolkit with the latest version of the simple-odf library is the answer for generating text documents.
You can find the the official page here :
Apache ODF Toolkit(Incubating) - Simple API
Here is a page to download version 0.8.1 (the latest version of Simple API) as I didn't find the latest version at the official page, only version 0.6.1
And here you can find Apache ODF Toolkit (incubating) cookbook
您可以尝试使用 JasperReports 生成报告,然后将其导出到 ODS。这种方法的好处是
You can try using JasperReports to generate your reports, then export it to ODS. The nice thing about this approach is
解决方案可能是 JODF Java API Independentsoft 公司。
例如,如果我们想要使用此 Java API 创建一个 Open Document 文件,我们可以执行以下操作:
该 API 也有 .NET 解决方案。
the solution may be JODF Java API Independentsoft company.
For example, if we want to create an Open Document file using this Java API we could do the following:
There are also .NET solutions for this API.