html生成pdf

html2canvas(document.getElementById("_container")).then(function (canvas) {
		//打印
		//window.print(canvas);
       const contentWidth = canvas.width;
       const contentHeight = canvas.height;
       // 将canvas转为base64图片
       const pageData = canvas.toDataURL('image/jpeg', 1.0);
       // 设置pdf的尺寸,pdf要使用pt单位 已知 1pt/1px = 0.75   pt = (px/scale)* 0.75
       // 2为上面的scale 缩放了2倍
       const pdfX = (contentWidth + 10) / 2 * 0.75;
       const pdfY = (contentHeight + 500) / 2 * 0.75 ;// 500为底部留白

       // 设置内容图片的尺寸,img是pt单位
       const imgX = pdfX;
       const imgY = (contentHeight / 2 * 0.75); //内容图片这里不需要留白的距离

       // 初始化jspdf 第一个参数方向:默认''时为纵向,
       // 第二个参数设置pdf内容图片使用的长度单位为pt,
       // 第三个参数为PDF的大小,单位是pt
       const PDF = new jsPDF('', 'pt', [pdfX, pdfY]);

       // 将内容图片添加到pdf中,因为内容宽高和pdf宽高一样,就只需要一页,位置就是 0,0
       PDF.addImage(pageData, 'jpeg', 0, 0, imgX, imgY);
       PDF.save('download.pdf');
     });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值