我已经在Angular 6管理面板中使用jsPDF生成了PDF。 我们制作特定html标签的图像(画布)并将其添加到jsPDF页面。
但是,如果页面很复杂,那么解决方案是什么。 在我的情况下,我有一张桌子(有垂直滚动),后面是一张图。 该表格和图形位于迭代(循环)中。我必须生成整个pdf。
有什么方法可以打印不在视图中的元素(隐藏表部分),并且仍可以使用适当的样式自动打印PDF。 此复杂循环所需的页数也会引起问题 有表格和图形。
我尝试使用jdPDF打印和其他库。 我已经成功打印了页面并了解了库的功能。
const data = document.getElementById(id);
html2canvas(data).then(canvas => {
const contentDataURL = canvas.toDataURL('image/png');
const pdf = new jsPDF('p', 'mm', 'a4', true);
const imgWidth = pdf.internal.pageSize.getWidth();
const imgHeight = pdf.internal.pageSize.getHeight();
const position = 0;
pdf.addImage(contentDataURL, 'PNG', 0, position, imgWidth, imgHeight, '', 'FAST');
pdf.autoPrint();
var blob = pdf.output("blob");
window.open(URL.createObjectURL(blob));
// x.document.location=string
// pdf.save('quotation.pdf');
});
}, 500);
期望:打印带有样式的整个HTML,并自动添加页数
实际结果:未打印单页和隐藏视图,例如滚动条。