在应用php codeigniter在单个 pdf 上的多个页面上进行大量搜寻之后:
这是我在 php codeigniter 中这个问题的简略解决方案。
1-在<head>标签后增加脚本:
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.min.js"</script><script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.5.3/jspdf.min.js"></script>
2-增加标签调用函数> generatePdf
<a href="javascript:generatePDF()">Dowload PDF</a></div>
具备动静 id 的 3 组 div
<div id="html2pdf_<?php echo $reg['id']; ?>">
4-启动<script>定义函数 generatePdf
<script> function generatePDF() {}</script>
5-创立文档新的jspdf
var doc = new jsPDF();
6 定义页面高度和 x,y 坐标
pageHeight= doc.internal.pageSize.height; x=15; y = 0 ;
7-通过用户 ID 动静调用 div 标签,其中指令从 db 填充:
<?php foreach($registration as $reg){?>doc.fromHTML(document.getElementById("html2pdf_<?php echo $reg['id']; ?>"),x,y,{'width': 170 }),<?php } ?>
8-将文档保留在下载文件夹中
doc.save("CallLetters.pdf");
9-当初在一个pdf中增加多个页面:
if (y >= pageHeight){doc.addPage();}
10-残缺代码:
<script> function generatePDF() { var doc = new jsPDF(); pageHeight= doc.internal.pageSize.height; x=15; y = 0 ;<?php foreach($registration as $reg){?>if (y >= pageHeight){doc.addPage();y = 0 doc.fromHTML(document.getElementById("html2pdf_<?php echo $reg['id']; ?>"),x,y,{'width': 170 }),y=500;}else{doc.fromHTML(document.getElementById("html2pdf_<?php echo $reg['id']; ?>"),x,y,{'width': 170}),y=500;}<?php } ?>doc.save("CallLetters.pdf"); }</script>