попробуйте использовать html-to-pdf-converter
Использование безголового хрома через кукловода и затем изменение сгенерированного PDF с помощью HummusJS для добавления верхних и нижних колонтитулов со страницейчисла
Установить
npm install html-to-pdf-converter
Для меня лучше использовать node-html-pdf с phantomjs.
Установить
npm install -g html-pdf
пример кода:
var fs = require('fs');
var pdf = require('html-pdf');
var html = fs.readFileSync('./test/businesscard.html', 'utf8');
var options = { format: 'Letter' };
pdf.create(html, options).toFile('./businesscard.pdf', function(err, res) {
if (err) return console.log(err);
console.log(res); // { filename: '/app/businesscard.pdf' }
});