如何使用 Liferay 生成 PDF 文件?

How to generate PDF files using Liferay?

我试图找到在 Liferay 中生成 PDF 文件的适当服务,但是我只找到了 class PDFProcessorUtil。如何使用它来生成PDF文件?那么如何保存生成的文件呢?我想我应该使用 DLAppLocalServiceUtil.addFileEntry 将文件保存到 Liferay 存储中。

Liferay 的 PDF 转换通过转换文档库中的文档并提供它们供下载来工作 - 这是通过 Open Office 实现的。安装 Open Office 或 Libre Office,运行 它处于服务器模式并配置 Liferay 以使用它,然后您可以选择 select 下载为 PDF。 HTML 格式有一些限制,因为它可以包含如此多的外部资源,所以我不确定您的结果是什么。

如果您自己生成 HTML 输出,您可能需要考虑任何其他(独立于 Liferay 的)生成 PDF 的方法,因为您可能不需要将文件上传到文档库 (例如,如果您正在动态生成报告并且只希望生成器结果为 PDF,但不存储它们)。如果这是您所需要的,您可以使用任何您想要的 pdf 转换器库 - Liferay 不会限制您的选择。

您还可以从 portlet 的服务资源阶段生成 PDF。

您在某处放置一个按钮或 link,当您单击它时,您将下载 PDF。

在这个简单的示例中,PDF 是从 Freemarker 模板生成的,该模板生成一个 HTML 并转换为 PDF:

https://github.com/roclas/pdfUtil