Несколько страниц PDF для динамического c html с использованием jspdf и html2canvas - PullRequest
2 голосов
/ 01 апреля 2020

Я получил этот шаблон, и я пытаюсь сделать его в формате PDF, используя jspdf и html2canvas:

<div id="tre" class="letter-content">
    <h5><b>My tittle</b></h5>
    <br>
    <p>My text here
    </p>
    <ul>
        {% for function in functions %}
            <li>
                <p>{{ function.description }}</p>
            </li>
        {% endfor %}
    </ul>

</div>

Вот сценарий создания PDF:

    function getPDF(){
        var HTML_Width = 1024;
        var HTML_Height = 768;
        var PDF_Width = 1024
        var PDF_Height = 768
        var canvas_image_width = 1050;
        var canvas_image_height = 950;

        html2canvas(document.getElementById("tre"),{ allowTaint:true}).then(function(canvas) {

            var imgData = canvas.toDataURL("image/jpg", 1);
            var pdf = new jsPDF('p', 'px', [PDF_Height, PDF_Width]);
            pdf.addImage(imgData, 'JPEG', 20, 0, canvas_image_width,canvas_image_height);
            pdf.save("Certificate.pdf");
        });
    }

Но, как вы можете см. в шаблоне, что оператор «for» может создать html для одной записи или для многих, получая, что, когда он рендерит много итераций, jspdf всегда получает только одну страницу, сокращая остальные, как я могу сделать это для создать столько страниц, сколько нужно ??

Заранее спасибо !!

...