2013-08-27 30 views
1

我想自动打印div区域。所以我使用了Html2Canvas。它可以在除IE9以外的所有浏览器中正常工作。请纠正我的代码,如果它有任何错误Html2Canvas只能在IE9中工作

function printSchedule() {    
    var browserName = '${sessionScope.BrowserContext.browserName}'; 

    //console.log("browserName::"+browserName); 
    if(browserName != 'msie'){ 
     $("#printArea").html2canvas(); 
    } 
    else if(browserName == 'msie'){ 
     var el = document.createElement('printArea'); 
     G_vmlCanvasManager.initElement(el); 
     var ctx = el.getContext('2d'); 

    } 
    setTimeout(function(){   
     window.print(); 
    $('html').unblock();},6000); 
} 

回答

4

此代码适用于所有浏览器。

html2canvas([document.getElementById(divName)], { 
onrendered: function (canvas) { 
    var imageData= canvas.toDataURL('image/png',1.0); 
} 
}); 
+0

html2canvas在android系统默认的Internet浏览器不能正常工作,除了在铬工作完美... plz帮助 –

+1

你得到任何错误?如果是,请让我知道错误的详细信息。 –

+1

问题已解决,我用css设置了背景图片,这就是为什么我得到不正确的图像。但是当我设置图像内的div捕获。并给出新的形象 –