npm 包 jsreport-weasyprint-pdf 使用教程

阅读时长 4 分钟读完

引言

jsreport 是一款用于生成 PDF、Excel、Word 文件的 Node.js 报表生成器。而 jsreport-weasyprint-pdf 则是 jsreport 的一个插件,使用 WeasyPrint 库生成 PDF 文件。WeasyPrint 是一款支持 HTML/CSS 标准的打印机渲染引擎,将 HTML/CSS 转换为 PDF 文件。

本篇文章将教会大家如何使用 jsreport-weasyprint-pdf 插件,通过 WeasyPrint 库将 HTML/CSS 转换为 PDF 文件。

安装 jsreport-weasyprint-pdf

使用 npm 安装 jsreport 和 jsreport-weasyprint-pdf。

配置 jsreport

在项目根目录下,创建一个名为 jsreport.config.js 的文件,内容如下:

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

这里定义了运行的端口号,允许跨域、渲染引擎为 in-process,数据源为 memory,日志级别为 silent。

创建报表

在项目根目录下,创建 test-template.html

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

配置模板引擎

在项目根目录下,创建 test-template.js

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

这里将模板引擎设置为 none,使用 weasyprint-pdf 渲染器,设置内容为 HTML。

运行报表

在项目根目录下,创建 index.js

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

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

结论

这篇文章介绍了 npm 包 jsreport-weasyprint-pdf 的使用教程。使用 WeasyPrint 库,将 HTML/CSS 转换为 PDF 文件。我们通过配置 jsreport 模板引擎,并使用 jsreport.render 方法,在 Node.js 中生成 PDF 文件。

参考资料

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

纠错
反馈