如何从复杂的 HTML 生成 PDF?

如何从复杂的 HTML 生成 PDF?

我想将现有的带有 CSS 的复杂 HTML 和图像转换为 PDF。

  • 我尝试过PhantomJSCasperJS它们很棒,但不再开发。

  • 我尝试过,wkhtmltopdf这很棒,但一年多没有发布新版本。

我了解无头 Firefox 和 Chrome,但我需要在 Debian 服务器上运行它并从 PHP 调用。 Firefox 和 Chrome 都需要 GUI,需要 X windows。

我在服务器上使用 Debian 8。

答案1

我了解无头 Firefox 和 Chrome,但我需要在 Debian 服务器上运行它并从 PHP 调用。

如果运行没有问题,那么 NodeJS 就可以了

既然你想将复杂的 HTML 转换为 PDF,那么你确实需要一个 HTML 渲染引擎,例如 Chrome Headless。

我工作的公司的以下AGPL-3.0项目可以完成你想要的。

https://www.pdftron.com/blog/react/react-to-pdf注意 React 不是必需的)。

https://github.com/PDFTron/web-to-pdf

这使用 Chrome headless,所以如果需要,请按照以下步骤在 Debian8 上安装 Chrome

答案2

weasyprint是一个替代方案,打包在 debian 上靶心/锡德,它可以通过安装在以前的 Debian 版本上pip。需要 python 3.5+:

pip install weasyprint

github 上的 weeasyprint。

特征

相关内容