在 PHP CodeIgniter 中使用 JSPDF 创建一个动态生成多个页面的 pdf 文件
Jackey -在使用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>
轻轻关注,将推“心”的不错经验和知识! 特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。
php介绍
PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。
上一篇: 微信小程序前端登录模块设计