Я экспортирую отчет в PDF с JSPDF 1.4.1, HTML @ Canvas 1.0.0-alpha.12 и Angular 6, и у меня возникают проблемы с рендерингом в зависимости от размера конвертируемого содержимого.
Я успешно создаю PDF в обеих ориентациях, при создании 1-страничного PDF-страницы отлично отображается (чистота 80% -85%) , при создании многостраничного PDF-файла путем настройки атрибута позиции, ноиспользуя тот же метод addImage (), страница ужасно визуализируется (+ - чистота 50%) .
const div;
const options = {background: "white", height: div.clientHeight, width: div.clientWidth, letterRendering:true};
html2canvas(div, options).then((canvas) => {
var width = doc.internal.pageSize.getWidth();
var height = doc.internal.pageSize.getHeight();
height = ratio * width;
var imgWidth = 208;
var pageHeight = 295;
var imgHeight = canvas.height * imgWidth / canvas.width;
var heightLeft = imgHeight;
var position = 2;
doc.addImage(imgData, 'PNG', 6, position, width-13, imgHeight, '', 'FAST');
heightLeft -= pageHeight;
while (heightLeft >= 0) {
position = heightLeft - imgHeight;
doc.addPage();
doc.addImage(imgData, 'PNG', 6, position+4, width-13, imgHeight, '', 'FAST');
heightLeft -= pageHeight;
}
doc.save(fileName);
Мой вопрос: есть ли способ сохранить ясность одинаковой, независимо от того, сколько нужно визуализировать, и просто увеличить размер файла?Я понимаю, что это в Альфе, но кто-нибудь имел успех или есть какие-либо предложения?