Node.js: добавление SVG к определенной странице PDF от pdfmake

Я пытаюсь создать PDF-контент с помощью pdfmake. Тем не менее, pdfmake не поддерживает добавление SVG на v0.1.38. Поэтому для этого я использую SVG-to-PDFKit. Вот мой код:

var printer = new pdfMakePrinter(fontDescriptors);

var doc = printer.createPdfKitDocument(pdfDoc);

SVGtoPDF(doc, s.data, s.x, s.y, s.options); // add this line for SVG-to-PDFKit to insert SVG while s contain SVG data

var chunks = [];
var result;

doc.on('data', function(chunk) {
    chunks.push(chunk);
});
doc.on('end', function() {
    result = Buffer.concat(chunks);
    resolve(result);
});
doc.end();

SVG успешно добавлен на последнюю страницу. Как добавить SVG на определенную страницу?

1 ответ

Решение

После прочтения исходного кода и документа, добавив { bufferPages: true } исправить ваши потребности идеально.

var printer = new pdfMakePrinter(fontDescriptors);

var doc = printer.createPdfKitDocument(pdfDoc, { bufferPages: true }); // magic here!
doc.switchToPage(x); // to page x, where x start from 0

SVGtoPDF(doc, s.data, s.x, s.y, s.options); // add this line for SVG-to-PDFKit to insert SVG while s contain SVG data

var chunks = [];
var result;

doc.on('data', function(chunk) {
    chunks.push(chunk);
});
doc.on('end', function() {
    result = Buffer.concat(chunks);
    resolve(result);
});
doc.end();
Другие вопросы по тегам