npm 包 wkhtmltopdf-lambda-pack 使用教程

阅读时长 4 分钟读完

简介

wkhtmltopdf-lambda-pack 是一个基于 AWS Lambda 平台的 npm 包,它可以将 HTML 页面转换成 PDF 文件。它的主要特点是:

  • 无需安装 wkhtmltopdf 等外部依赖,可以直接在 AWS Lambda 中使用。
  • 可以适应不同的 Lambda 运行环境和 Node.js 版本。

本文将详细介绍 wkhtmltopdf-lambda-pack 的安装和使用方法,并提供一些示例代码帮助读者更好地理解。

安装

在安装之前,需要保证你已经安装了 Node.js 和 npm。

运行以下命令即可完成安装:

使用

创建一个 index.js 文件,并输入以下代码:

-- -------------------- ---- -------
----- -- - --------------
----- - ------ - - -----------------------------------

--------------- - ----- ------- -------- --------- -- -
  ----- ---- - ----------------------- ---------------------------
  ----- --------- - ----- -------------
  --------------------------------- -----------
  -------------- ---- ---- ------------
--

这段代码的作用是将一个简单的 HTML 页面转换成 PDF 文件。

接下来,需要在本地环境下测试代码。可以使用 serverless-offline 进行本地模拟。安装 serverless-offline:

然后,在你的项目根目录创建一个 serverless.yml 文件,并输入以下代码:

-- -------------------- ---- -------
-------- ----------

--------
  - ------------------

----------
  ----
    -------- -------------
    -------
      - -----
          ----- ---
          ------- ---

最后,在控制台中执行以下命令运行 Lambda 函数本地模拟:

在浏览器中打开 http://localhost:3000/pdf,你应该可以看到 /tmp/test.pdf 文件已经生成。

配置

在 Lambda 运行时,wkhtmltopdf-lambda-pack 会自动检测运行环境和 Node.js 版本,并下载相应版本的 wkhtmltopdf。如果您需要手动配置,可以设置以下环境变量:

  • WKHTMLTOPDF_ARCH: wkhtmltopdf 的架构,可选值为“x64”和“arm64”。
  • WKHTMLTOPDF_VERSION: wkhtmltopdf 的版本号,例如“0.12.6”。

例如,以下代码将设置 wkhtmltopdf 的版本为 0.12.6,并打印您的运行环境:

注意:这里打印的process.version是您的 Lambda 运行时版本,并非本地环境上的版本。

总结

本文介绍了如何使用 wkhtmltopdf-lambda-pack 将 HTML 页面转换成 PDF 文件。我们详细介绍了安装、使用和配置方法,并提供了示例代码帮助读者更好地理解。希望这篇文章对前端开发者有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005669781e8991b448e2d0e

纠错
反馈