我得到了这个模板,我正在尝试使用 jspdf 和 html2canvas 将其制作成 pdf:
<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 总是只让我得到一页,削减其余的,如何我可以让它根据需要创建尽可能多的页面吗??
提前致谢!!
最佳答案
使用jspdf可以生成多页pdf。请引用此链接https://stackoverflow.com/a/59320184/9530728 .
关于javascript - 使用 jspdf 和 html2canvas 的动态 html 的多个 pdf 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60961702/