我在用https://github.com/devongovett/pdfkit https://github.com/devongovett/pdfkit生成 PDF 文件,我可以简单地使用类似的方法
app.get('/get-pdf', (req, res) => {
const doc = new PDFDocument();
const filename = 'my_pdf.pdf';
res.setHeader('Content-disposition', 'attachment; filename="' + filename + '"');
res.setHeader('Content-type', 'application/pdf');
const content = "Some content";
doc.y = 300;
doc.text(content, 50, 50);
doc.pipe(res);
doc.end();
});
但我还想生成 UPC-A 条形码:
我已经找到图书馆了https://github.com/lindell/JsBarcode https://github.com/lindell/JsBarcode它可以仅从 12 位代码生成此类条形码。不过,这个库似乎主要用在客户端。
我想生成带有此类条形码的 PDF,但我不知道该怎么做,也不知道 JsBarcode 对于这种单一类型的条形码是否不太复杂。
Edit
正如评论中所建议的,我确实尝试生成带有 UPC-A 字体的条形码:
app.get('/get-pdf', (req, res) => {
const doc = new PDFDocument();
const filename = 'my_pdf.pdf';
res.setHeader('Content-disposition', 'attachment; filename="' + filename + '"');
res.setHeader('Content-type', 'application/pdf');
doc.font('/fonts/UPC-A.ttf').fontSize(50).text('012345678905');
doc.pipe(res);
doc.end();
});
我从中得到
看起来确实不错,但它看起来并不完全像常见的 UPC-A 条形码。
我使用的字体位于http://www.fontpalace.com/font-download/UPC-A/ http://www.fontpalace.com/font-download/UPC-A/.