var pages = $(".page_re") function makeMpdf() { if (confirm("您确认下载该PDF文件吗?")) { /*1*/ // var pdf = new jsPDF(\'p\', \'pt\', \'a4\'); // // 设置打印比例 越大打印越小 // // pdf.internal.scaleFactor = 2.7; // var options = { // pagesplit: true, //设置是否自动分页 // "background": \'#FFFFFF\' //如果导出的pdf为黑色背景,需要将导出的html模块内容背景 设置成白色。 // }; // var printHtml = $(\'#pdf\').get(0); // 页面某一个div里面的内容,通过id获取div内容 // layer.msg(\'正在生成,请稍等\', { // icon: 16, // shade: 0.5 // }) // // $(\'.operbox a.btn\').html(\'正在生成...\') // // $(\'.operbox a.btn\').attr("disabled", true); // pdf.addHTML(printHtml, 15, 15, options, function () { // pdf.save(\'报告.pdf\'); // }); /*2*/ // layer.msg(\'正在生成,请稍等\', { // icon: 16 // , shade: 0.5 // }) // var pdf; // var width; // var height; // $(pages).each(function () { // var mainRight = $(this); // html2canvas(mainRight, { // allowTaint: true, // dpi: 96, // 提升画面质量,但是会增加文件大小 // background: \'#FFFFFF\', // onrendered: function (canvas) { // // var contentWidth = canvas.width; // var contentHeight = canvas.height; // // var pageData = canvas.toDataURL(\'image/jpeg\', 1.0); // // var pdfWidth = (contentWidth + 10) / 2 * 0.75; // var pdfHeight = (contentHeight + 200) / 2 * 0.75; // 500为底部留白 // // var imgWidth = pdfWidth; // var imgHeight = (contentHeight / 2 * 0.75); //内容图片这里不需要留白的距离 // // width += pdfWidth; // // height += pdfHeight; // var pdf = new jsPDF(\'\', \'pt\', [pdfWidth, pdfHeight]); // pdf.addImage(pageData, \'jpeg\', 0, 0, imgWidth, imgHeight); // pdf.addPage(); // } // }) // }) // pdf.save(\'体检报告_\' + new Date().getTime() + \'.pdf\'); // // console.log(js_getDPI()); // return; /*3*/ layer.msg(\'正在生成,请稍等\', { icon: 16, shade: 0.5 }) // var element = document.getElementById("pdf"); var pdf = new jsPDF(\'p\', \'mm\', \'a4\'); //A4纸,纵向 var length = $(pages).length; var img_arr = []; // var pages = $(pages).toArray().reverse(); $(pages).each(function (index,value) { //$(this).scrollTop(); // console.log($(this).offset().top) // return; window.scrollTo(0,$(this).offset().top);//最为关键的地方 需要滚动到指定标签 否则图片不全 html2canvas($(this), { // useCORS: true, // allowTaint:true, // height: $("#pdf").outerHeight(), logging: false, // width:window.screen.availWidth, // height:window.screen.availHeight, windowWidth:document.body.scrollWidth, windowHeight:document.body.scrollHeight, background: \'#FFFFFF\', x:0, scrollY:$(this).offset().top, async:false,//同步执行 }).then(function (canvas) { //onrendered: function (canvas) { // var ctx = canvas.getContext(\'2d\'); // var bl = canvas.height/22676; a4w = 210, a4h = 297; var img = canvas.toDataURL(\'image/png\', 1.0); // $(\'.images\').append(\'<image src="\'+img+\'" />\') pdf.addImage(img, \'PNG\', 0, 0, a4w, a4h); //添加图像到页面,保留10mm边距 //renderedHeight += imgHeight; //if (renderedHeight < canvas.height) delete canvas; console.log(index) if(index == (length - 1)){ var name = $(\'#order_name\').val(); pdf.save(name + \'体检报告.pdf\'); return; }else{ pdf.addPage();//如果后面还有内容,添加一个空页 } layer.closeAll(); layer.msg(\'正在生成第\'+(index+2)+\'张...\') }); }); //console.log(1); /*后端*/ // var id = $(\'#order_id\').val(); // window.location.href = \'/check_site/index/gene_pdf?id=\'+id; } }