在Java中将odt转换为pdf而不启动soffice

Posted

技术标签:

【中文标题】在Java中将odt转换为pdf而不启动soffice【英文标题】:Convert odt to pdf in Java without starting soffice 【发布时间】:2012-11-27 16:05:23 【问题描述】:

我的问题似乎很基本,但我一直无法找到一个简洁的解决方案。

我需要将odt 文件转换为pdf 文件。 JODConverter 运行良好,但 soffice 需要安装在机器上并单独启动。对于生产限制,我不能假设 soffice 将安装在执行我的应用程序的机器上。

那么有没有办法通过设置正确的依赖关系并调用正确的代码来完成这种转换?这可以简单地使用UNO API 或任何其他方式完成吗?如果是的话,你能给我更多的见解吗?

谢谢!

【问题讨论】:

【参考方案1】:

如果 CUPS 可用,您可以考虑使用 CUPS-PDF。它独立于办公室。它只会将 .odt 文件“打印”为 PDF 格式。 Here is the CUPS-PDF homepage.

【讨论】:

基本上我需要能够嵌入任何依赖项。因此我不能假设 cups-pdf 可用。【参考方案2】:

你可能想试试ODFDOM。

免责声明:我自己没有使用过。

【讨论】:

【参考方案3】:

JOD Converter 运行良好,如果可以使用无头选项安装专用服务器开放式办公室 https://askubuntu.com/questions/194352/install-openoffice-for-headless-use

使用 Tomcat,您可以运行 Web 应用程序将 Open Office 支持的任何文件转换为 PDF http://www.artofsolving.com/opensource/jodconverter

【讨论】:

以上是关于在Java中将odt转换为pdf而不启动soffice的主要内容,如果未能解决你的问题,请参考以下文章

在 Windows 上使用 Openoffice 将 ODT 转换为 PDF

XDocReport 将 odt 转换为 pdf 如何设置正确的语言环境

soffice.exe 将 odt 转换为 PDF/A

在Linux上使用命令行将openoffice文档(odt)转换为PDF?

使用 xdocReport 将 .odt 转换为 .pdf 时的验证错误

生成 ODT/DOC(X) 并转换为 PDF,无需 OO.o/MS