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

时间:2020-07-27 06:59:52

标签: java node.js pdf-generation headless-browser pdf-conversion

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

我必须执行哪些方法:

  • 使用Head-less浏览器并捕获HTML页面并转换为PDF
  • 使用Java / Node库进行转换。哪个会在PDF文件中创建HTML相关组件,然后呈现?

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

[更新]

每种方法的优点和缺点是什么

1 个答案:

答案 0 :(得分:1)

我认为,最好的前进方式始终取决于您已经拥有的经验和采取的方法。这里没有对与错,每个人都必须根据自己的喜好自行决定。

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

无头浏览器:
优势:

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

缺点

  • 所需的浏览器必须安装在计算机/服务器上
  • 渲染因不同的浏览器而异

库:
优势:

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

缺点

  • 升级到较新版本时,通常需要修改代码。
  • 升级到较新版本时,结果可能会有所不同。

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

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

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

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

我不能说这是否是最好的方法,但是对我来说,这是最简单,最容易理解的方法