前端实现打印功能

一、实现打印机打印

bdhtml=window.document.body.innerHTML;
        sprnstr=""; //开始打印标识字符串有17个字符
        eprnstr=""; //结束打印标识字符串
        prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17); //从开始打印标识之后的内容
        prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr)); //截取开始标识和结束标识之间的内容
        window.document.body.innerHTML=prnhtml; //把需要打印的指定内容赋给body.innerHTML
        window.print(); //调用浏览器的打印功能打印指定区域
        window.document.body.innerHTML=bdhtml; // 最后还原页面

代码很简单,

window.document.body.innerHTML=prnhtml; //把需要打印的指定内容赋给body.innerHTML

为最主要的一段代码,控制打印内容;

二、实现打印标签(小票机打印)

用Lodop实现,首先引入LodopFuncs.js及一些需要的相关插件

主要声明代码:

   var LODOP; //声明为全局变量
    //直接打印
    function print() {
        printPage();
        LODOP.PRINT();//'PRINT':[5,1]
    }
    function printPage(data){
        LODOP=getLodop();
        LODOP.PRINT_INIT(打印内容及格式);//
        LODOP.SET_PRINT_STYLE("FontSize",11);
        LODOP.ADD_PRINT_TEXT("12mm","10mm","35mm","8mm",data);
        LODOP.ADD_PRINT_TEXT("12mm","52mm","35mm","8mm",data);
        //参数100表示距离左侧100px;88表示距离顶部88px
        // LODOP.ADD_PRINT_HTM(22,10,"80%","80%",document.getElementById("打印内内容所在盒子").innerHTML);
    }

调用:

function printing(goodsSn,state) {
        printPage(goodsSn);
        LODOP.PRINT();//'PRINT':[5,1]
}

 

你可能感兴趣的:(前端,前端实现打印功能)