将 HTML 文件转换为 PDF [已关闭]

2022-08-31 08:06:44

我需要从现有的(X)HTML文档中自动生成一个PDF文件。输入文件(报告)使用相当简单的,基于表格的布局,因此可能不需要支持真正花哨的JavaScript / CSS内容。

由于我习惯于在Java中工作,因此最好是可以在Java项目中轻松使用的解决方案。不过,它只需要在Windows系统上工作。

一种可行的方法,但不能产生高质量的输出(至少开箱即用),那就是使用CSS2XSLFO和Apache FOP来创建PDF文件。我遇到的问题是,虽然CSS属性转换得很好,但表格布局非常混乱,文本从表格单元格中流出。

我还快速浏览了Jrex,这是一个使用Gecko渲染引擎的Java-API。

有没有办法从Internet Explorer渲染引擎中获取呈现的页面并将其自动发送到PDF打印机工具?我没有在Windows中进行OLE编程的经验,所以我不知道什么是可能的,什么是不可能的。

你有想法吗?


答案 1

Flying Saucer XHTML 渲染器项目支持将 XHTML 输出到 PDF。请看一下此处的示例。


答案 2

你试过WKHTMLTOPDF吗?

它是一个简单的shell实用程序,是WebKit的开源实现。两者都是免费的。

我们在这里设置了一个小教程

编辑( 2017 ):

如果今天要建造一些东西,我不会再走那条路了。
但会改用 http://pdfkit.org/
可能剥离它的所有nodejs依赖项,以便在浏览器中运行。