app.get('/individual_report/:athlete_id', function(req, res) {
database.select('*').from('participants').then(data => {
if (data.length) {
res.render('individual_report', {
name: data
});
const hbsfile = fs.readFileSync(__dirname + '/../public/views/individual_report.hbs', 'utf8');
const document = {
template: hbsfile,
context: {
options: {
dataForPDF: data,
},
},
path: "./test.pdf"
};
pdf.create(document, options).then(res => {
console.log(res)
}).catch(error => {
console.error(error)
});
} else {
res.json({
msg: 'Invalid athlete ID'
});
}
}).catch(err => res.sendStatus(400));
});
У меня есть этот маршрут, который визуализирует шаблон руля и одновременно генерирует pdf шаблона. Проблема с сгенерированным pdf в том, что к нему не применяется print css.
В hbs я связал этот print css и связь работает. Я проверил это, сменив носитель с печати на экран.
<link rel="stylesheet" href="/../static/assets/css/style_print_individual_report.css" type="text/css" media="print" />
Чтобы применить print css к pdf, мне нужно поместить тег с @media print {} в шаблон hbs, который я не считаю аккуратным.
Итак, вопрос в том, читает ли пакет dynamic-html-pdf print css и есть ли способ каким-либо образом включить css без тега style в файл шаблона?