Node JS & pdfkit - addPage() loop
Node JS & pdfkit - addPage() loop
我正在使用Node.js和pdfkit来生成名称标签。目标是发送一组人员对象,其中包含每个人的名字和姓氏以及标签的数量qty
。这是我想出的:
var PDFDocument = require('pdfkit');
var people = [
{qty:2, first:'Bob', last:'Hope'},
{qty:3, first:'Bing', last:'Crosby'}
];
function makePDF (people) {
var doc = new PDFDocument({
size: [165,288],
margins: 1
}),
firstTag = true;
doc.rotate(90);
// Loop through each person
for (var i = 0; i < people.length; i++) {
// Generate each name tag
for (var x = 0; x < people[i].qty; x++) {
if (firstTag) {// First page is automatically created
firstTag = false;
} else {// The rest must be added
doc.addPage();
}
doc.fontSize(40).text(people[i].first, 13, -150);
doc.fontSize(16).text(people[i].last, 15, -117);
}
}
doc.write('tags.pdf');
}
makePDF(people);
这会生成一个 5 页的 pdf(它应该有一个人的 2 个和另一个人的 3 个)——但只有第一个标签上有信息,其余的都是空白的。
在这种情况下,如何正确使用addPage()
?还是有更好的方法来获得相同的结果?
想通了 - 显然每次我添加新页面时,我都必须旋转它。
16号线的doc.addPage()
变为doc.addPage().rotate(90)
相关文章:
- 对于loop.if-仅在经过所有间隔后返回true
- jQuery setTimeOut: in for-loop
- javascript/angularjs 将 String 与 number for loop 连接起来
- Loop什么都没做
- JSON:loop Invoice Items:如果InvoiceNo未退出则添加,如果退出则更新值,示例包括在内
- JavaScript for loop
- Coffeescript jQuery each loop
- Native/$q Javascript For Loop Promise Resolve
- jquery .change inside loop
- JavaScript Loop to setData method
- Javascript / Openlayers for loop不起作用
- React JS Ajax Data Loop
- javascript loop getElementById
- for loop inside another for loop javascript (jquery)
- Razor foreach loop and javascript
- Json "for" loop
- 如何使用$q promise同步执行FOR LOOP
- JavaScript for loop "document.getElementById"
- Javascript Generic For Loop
- Node JS & pdfkit - addPage() loop