js调用打印机打印指定内容

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Ediwal/article/details/46922981

js调用打印机打印指定内容分两种方式,一种是用html5把指定区域转化为canvas在打印,但是此种方法当内容中有图片时却打印不了,代码如下:

function printById(id) {  
        html2canvas(document.getElementById(id), {  
            allowTaint : true,  
            taintTest : false,  
            onrendered : function(canvas) {  
                canvas.id = "mycanvas";  
                //document.body.appendChild(canvas);  
                //生成base64图片数据  
                var dataUrl = canvas.toDataURL();  
                var newImg = document.createElement("img");  
                newImg.src = dataUrl;  
                /* document.body.appendChild(newImg);  */  
                /* window.open(newImg.src); */  
                var printWindow = window.open(newImg.src);  
                    // printWindow.document.write();   
                     printWindow.document.write('<img src="'+newImg.src+'" />')  
                     printWindow.print();  
            }  
        });  
    }

另一种方法是直接通过js调用打印机,再设置不打印的样式表,将不打印的内容类设置为不打印的样式表即可,样式表内容如下:

<style type="text/css">
@media print {
.Noprint {
    display: none;
}
}
</style>

调用打印机方式:window.printf()




展开阅读全文

没有更多推荐了,返回首页