node.js 中 pdfkit-tables 中的垂直线

Vertical lines in pdfkit-tables in node.js

我有 API 在将值保存到数据库后生成 pdf 文件。我的客户需要生成此 pdf,然后通过邮件发送。他给我发了一张 pdf 应该是什么样子的照片。我重新创建了它,它看起来与那张照片中的一样,但很难阅读,因为缺少垂直线。我查看了 trought 文档并尝试 google,但是我没有找到任何东西。 这是我的 PDF 的样子:

如您所见,垂直线缺失,因此更难阅读。

是否可以添加垂直线?

这是我的代码:

let doc = new PDFDocument({ margin: 30, size: "A4" });
      doc.pipe(
        fs.createWriteStream(`${problemName}_${creationDate}` + ".pdf")
      );
      const table = {
        title:
          "Zápis koordinátora " +
          koordinatorName +
          " zo dna " +
          creationDate +
          ".",
        divider: {
          header: { disabled: true },
          horizontal: { disabled: false, width: 1, opacity: 1 },
          padding: 5,
          columnSpacing: 10,
        },
        headers: [
          { width: 130, renderer: null },
          { width: 130, renderer: null },
          { width: 130, renderer: null },
          { width: 130, renderer: null },
        ],
        rows: [
          ["Nazov", problemName, "", ""],
          [
            "Nazov staveniska (Projekt)",
            constructionName,
            "Na vedomie komu",
            "mailing list 1",
          ],
          [
            "Vytvoril koordinator BOZP",
            koordinatorName,
            "Priorita",
            problemPriority,
          ],
          ["Datum zistenia", creationDate, "Datum odstranenia", ""],
          [
            "Zodpovedny za vyriesenie zistenia",
            "Janko Maly",
            "Celkovy pocet zisteni v dni",
            10,
          ],
          ["Miesto zistenia", discoveryPlace, "Zistenie císlo", 1],
          ["Popis", problemText],
          [
            "Navrh na udelenie sankcie",
            "50€",
            "Pre spolocnost",
            adressedFor,
          ],
        ],
      };

      doc.table(table, {
        prepareHeader: () => doc.font("Helvetica-Bold").fontSize(8),
        prepareRow: (row, indexColumn, indexRow, rectRow, rectCell) => {
          doc.font("Helvetica").fontSize(8);
          indexColumn === 0;
        },
      });
      doc.end();

我正在使用 pdfkit-table 包。

谢谢大家

根据定义,简单的 PDF 结构不是表格,只有一个单元格(页面),并且一列可以细分为两行或更多行,文本子列之间有空空格。

这就是为什么 table 很难分[ex]tract

因此,在一个区域中添加彩色行非常容易制作 table,因此制作垂直子分隔线更加困难,但是该功能是在 2022 年 1 月添加的 https://github.com/natancabral/pdfkit-table/files/7865078/document-5.pdf

示例见 https://github.com/natancabral/pdfkit-table/issues/16#issuecomment-1012389097