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
我有 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