добавление кириллицы в jsPDF
Для создания pdf документа использую jsPDF который принимает либо html строку либо выбранный контейнер, но если в выбранном html есть кириллица, то всё ломается. Пробовал импортировать шрифты как показывается здесь, но всё безрезультатно, разве что встроенными методами текст писать а не html строкой. При использовании html2convas дела лучше, но вся кириллица сыпется
export const createPdfFromHtml = (fileName, stringHtml, orientation) => {
const divContainer = document.createElement('div')
divContainer.id = "pdfContainer";
divContainer.innerHTML = stringHtml
document.getElementById('app').appendChild(divContainer)
const node = document.getElementById("pdfContainer");
const doc = new jsPDF({format: 'a4',orientation});
doc.html(node,{
callback: function (doc) {
doc.save();
}
});
}
Ответы (1 шт):
Автор решения: Evgeniy Leonidov
→ Ссылка
1.Попробуйте добавить шрифт, который поддерживает кириллицу, как вариант DejaVuSans.ttf. Добавили:
doc.addFont('/path/to/DejaVuSans.ttf', 'DejaVuSans', 'normal');
Включили:
doc.setFont('DejaVuSans');
Для работы с канвой пробуйте явно задавать кодировку в настройках html2canvas
encoding: 'utf-8'
Ну и как вариант, если библиотека pdfmake не замеченная в таких проблемах