В настоящее время я использую npm html-pdf
для экспорта html в pdf.
У меня есть рабочий код, как показано ниже
const pdf = require('html-pdf');
const fs = require('fs');
const html = fs.readFileSync('./assets/templates/form.html', 'utf8');
const filename = 'testing';
res.writeHead(200, {
'Content-Type': 'application/pdf',
'Content-disposition': `attachment; filename=${filename}.pdf`,
});
// use buffer
return pdf.create(html).toBuffer(function(err, buffer){
const result = Buffer.from( buffer, 'base64' );
return res.end(result);
});
Это хорошо работает при развертывании на сервер ubuntu
, но каким-то образом при развертывании на сервере centos
в pdf будет экспортирован только engli sh, любой другой Unicode игнорируется, не отображается как квадрат или что-то просто пустое. Когда я пытаюсь console.log(html)
до pdf.create(html)
, я вижу что-то вроде 江西
, но снова, после загрузки pdf этой части просто пуст.
Я пытался изменить тип контента на 'Content-Type': 'application/pdf; charset=utf-8',
Но тоже не повезло.
Заранее благодарен за любую помощь / совет.