wqw553639736

<head>
@*需要引用的js库*@
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.0.272/jspdf.debug.js"></script> </head> <body> <div id="pdfDom" class="right-aside"> 1232132131sd </div> <input type="button" value="点击" onclick="makeMpdf(\'建设工程施工安全监督抽查记录\', \'pdfDom\')" /> <script type="text/javascript">//将html页面导出.pdf格式文件(适用于jQuery、vue库) -- xzz 2018/04/24 function makeMpdf(pdfName,elementId) { if (confirm("您确认下载该PDF文件吗?")) { //var target = document.getElementsByClassName("right-aside")[0]; var target = document.getElementById(elementId); target.style.background = "#FFFFFF"; if (pdfName == \'\' || pdfName == undefined) pdfName = "content"; html2canvas(target, { onrendered: function (canvas) { var contentWidth = canvas.width; var contentHeight = canvas.height; //一页pdf显示html页面生成的canvas高度; var pageHeight = contentWidth / 592.28 * 841.89; //未生成pdf的html页面高度 var leftHeight = contentHeight; //页面偏移 var position = 0; //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 var imgWidth = 595.28; var imgHeight = 592.28 / contentWidth * contentHeight; var pageData = canvas.toDataURL(\'image/jpeg\', 1.0); var pdf = new jsPDF(\'\', \'pt\', \'a4\'); //有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) //当内容未超过pdf一页显示的范围,无需分页 if (leftHeight < pageHeight) { pdf.addImage(pageData, \'JPEG\', 0, 0, imgWidth, imgHeight); } else { while (leftHeight > 0) { pdf.addImage(pageData, \'JPEG\', 0, position, imgWidth, imgHeight) leftHeight -= pageHeight; position -= 841.89; //避免添加空白页 if (leftHeight > 0) { pdf.addPage(); } } } pdf.save(pdfName + ".pdf"); } }) } } </script> </body>

 

分类:

技术点:

相关文章:

  • 2021-07-04
  • 2021-06-24
  • 2021-08-16
  • 2022-12-23
  • 2021-11-24
  • 2022-12-23
  • 2021-08-27
猜你喜欢
  • 2021-12-28
  • 2021-11-28
  • 2021-12-14
  • 2021-08-01
相关资源
相似解决方案