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;
}
}