Sclero2004
Mitglied
Problem gelöst, ein Blick in die Releasenotes hat geholfen:
github.com
So funktioniert es dann:
Wobei ich zum Testen einfach die Zeilen der Tabelle genommen habe.
Releases · parallax/jsPDF
Client-side JavaScript PDF generation for everyone. - parallax/jsPDF
in Version 2.5.0 behoben. Wir hatten dagegen 2.4.0.fix html function only rendering on the first invocation per document
So funktioniert es dann:
Code:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js"></script>
<script src="https://html2canvas.hertzen.com/dist/html2canvas.js"></script>
<script>
window.jsPDF = window.jspdf.jsPDF;
document.getElementById('generatePdf').addEventListener('click', function (event) {
event.preventDefault();
const pdf = new jsPDF('p', 'mm', 'a4');
const pages = Array.from(document.querySelectorAll('tr'));
function addPageToPdf(pages, pageIndex = 0) {
if (pages.length === 0) {
pdf.save();
} else {
pdf.html(pages[0], {
y: pdf.internal.pageSize.getHeight() * pageIndex,
html2canvas: {
scale: 0.5
},
callback(pdf) {
pdf.addPage('a4', 'p');
addPageToPdf(pages.slice(1), ++pageIndex);
}
});
}
}
addPageToPdf(pages);
});
</script>