将 HTML 页转换为 PDF 文件的最佳方法

Best way to convert HTML page into PDF file

我正在编写一项新服务 Convert-HTML-TO-PDF。但是现在我很困惑我应该选择哪种方式。

我要实现的方法:

现在,请帮助我了解实施服务的最佳方式是什么以及为什么!

[更新]

每种方法的优缺点是什么

在我看来,最好的前进方式始终取决于您已经拥有的经验和采取的方法。没有对错之分,大家根据自己的喜好选择。

每种方法都有优点和缺点。其中一些是:

无头浏览器:
优势:

  • 不需要大库,因此非常节省内存

缺点

  • 所需的浏览器必须安装在 computer/server
  • 不同浏览器的呈现可能不同

图书馆:
优势:

  • 可用的不同库
  • 对于流行的库,有很好的文档和代码示例

缺点

  • 升级到较新版本时,通常需要对代码进行适配。
  • 升级到较新版本时,结果可能会有所不同。

在我的项目中,我使用无头 chrome 浏览器。为此,我在 Github 上找到了一个易于使用的 api,它使用 Chrome.

的 DevTools

它还包括 simple example 如何将页面打印成 PDF。

出于我的目的,我自定义了这个示例并将 HTML 写入一个临时文件,然后导航到该文件。

// Navigate to HTML-File
page.navigate(htmlTempFile.getAbsolutePath());

我不能说这是不是最好的方法,但对我来说这是最简单易懂的方法