首先要导出pdf,需要先引用jspdf.js这个文件,
其次,引用之后,会出现中文乱码问题,再引用图上剩余的三个文件
<!--引入jsPDF库-->
<script src="./lib/jspdf.js" charset="UTF-8"></script>
<script src="./lib/jspdf_font/jspdf.customfonts.min.js"></script>
<script src="./lib/jspdf_font/default_vfs.js"></script>
文件下载:
链接:https://pan.quark.cn/s/0bfd8eb4fa9c
提取码:4dg3
具体实现代码如下:
function getPDFfile() {
//自己定义的转换时间的方法
const currentTime = parseTime(new Date().toString(), "yyyy-MM-dd hh:mm:ss");
//创建jsPDF实体对象
let doc = new jsPDF();
//添加字体,解决中文乱码问题
doc.addFont('NotoSansCJKtc-Regular.ttf', 'NotoSansCJKtc', 'normal');
doc.setFont('NotoSansCJKtc');
//得到文档的宽和高,不过我这没怎么用到
var pageHeight = doc.internal.pageSize.height || doc.internal.pageSize.getHeight();
var pageWidth = doc.internal.pageSize.width || doc.internal.pageSize.getWidth();
//设置生成的标题字体大小
doc.setFontSize(20);
//'标题'是在pdf文档里要生成的文字
//x控制文字第一个字距离页边的距离;
//y控制文字所在第几行,40大约是第4行;
//{align: 'center'}使在pdf生成的文字居中;
doc.text('标题', x, y, {align: 'center'});
//设置标题下面的字体的大小
doc.setFontSize(17);
doc.text('xx项目:' + getInputValue(), pageWidth / 2, 130, {align: 'center'});
doc.text('pdf生成时间:' + currentTime, pageWidth / 2, 170, {align: 'center'});
// 将文档保存为文件,此处文件名,可以自己命名自己需要的名字
doc.save(getInputValue() + '项目随机抽选确认单.pdf');
}