c-loop打印

//打印调用
 printBarcode(this.barcodeInfoArr);
  LODOP.PREVIEW();
const printPage = ({name,age,gender,createTime,code},LODOP) => {
//1.引用
//====获取LODOP对象的主过程:====
export const getLodop = function(oOBJECT,oEMBED){
    let strHtmInstall = "";
    let strHtmUpdate = "";
    let strHtm64_Install = "";
    let strHtm64_Update = "";
    let strHtmFireFox = "";
    let strHtmChrome = "";
    let strCLodopInstall = "";
    let strCLodopUpdate = "";
    let LODOP;
    try {
        var isIE =
            navigator.userAgent.indexOf('MSIE') >= 0 ||
            navigator.userAgent.indexOf('Trident') >= 0
        if (needCLodop()) {
            try {
                LODOP = getCLodop()
            } catch (err) {}
            if (!LODOP && document.readyState !== 'complete') {
                alert('C-Lodop没准备好,请稍后再试!')
                return
            }
            if (!LODOP) {
                // if (isIE) document.write(strCLodopInstall)
                // else
                //     document.body.innerHTML =
                //         strCLodopInstall + document.body.innerHTML
                // return
            } else {
                // if (CLODOP.CVERSION < '3.0.4.3') {
                //     if (isIE) document.write(strCLodopUpdate)
                //     else
                //         document.body.innerHTML =
                //             strCLodopUpdate + document.body.innerHTML
                // }
                if (oEMBED && oEMBED.parentNode)
                    oEMBED.parentNode.removeChild(oEMBED)
                if (oOBJECT && oOBJECT.parentNode)
                    oOBJECT.parentNode.removeChild(oOBJECT)
            }
        } else {
            var is64IE = isIE && navigator.userAgent.indexOf('x64') >= 0
            //=====如果页面有Lodop就直接使用,没有则新建:==========
            if (oOBJECT != undefined || oEMBED != undefined) {
                if (isIE) LODOP = oOBJECT
                else LODOP = oEMBED
            } else if (CreatedOKLodop7766 == null) {
                LODOP = document.createElement('object')
                LODOP.setAttribute('width', 0)
                LODOP.setAttribute('height', 0)
                LODOP.setAttribute(
                    'style',
                    'position:absolute;left:0px;top:-100px;width:0px;height:0px;',
                )
                if (isIE)
                    LODOP.setAttribute(
                        'classid',
                        'clsid:2105C259-1E0C-4534-8141-A753534CB4CA',
                    )
                else LODOP.setAttribute('type', 'application/x-print-lodop')
                document.documentElement.appendChild(LODOP)
                CreatedOKLodop7766 = LODOP
            } else LODOP = CreatedOKLodop7766
            //=====Lodop插件未安装时提示下载地址:==========
            if (LODOP == null || typeof LODOP.VERSION == 'undefined') {
                // if (navigator.userAgent.indexOf('Chrome') >= 0)
                //     document.body.innerHTML =
                //         strHtmChrome + document.body.innerHTML
                // if (navigator.userAgent.indexOf('Firefox') >= 0)
                //     document.body.innerHTML =
                //         strHtmFireFox + document.body.innerHTML
                // if (is64IE) document.write(strHtm64_Install)
                // else if (isIE) document.write(strHtmInstall)
                // else
                //     document.body.innerHTML =
                //         strHtmInstall + document.body.innerHTML
                return LODOP
            }
        }
        if (LODOP && LODOP.VERSION < '6.2.2.3') {
            // if (!needCLodop()) {
            //     if (is64IE) document.write(strHtm64_Update)
            //     else if (isIE) document.write(strHtmUpdate)
            //     else
            //         document.body.innerHTML =
            //             strHtmUpdate + document.body.innerHTML
            // }
            return LODOP
        }
        //===如下空白位置适合调用统一功能(如注册语句、语言选择等):===
        LODOP && LODOP.SET_LICENSES("","12A7821B5A173D1D8FC8784D55708287969","","");
        //===========================================================
        if (oEMBED && oEMBED.parentNode) oEMBED.parentNode.removeChild(oEMBED);
        if (oOBJECT && oOBJECT.parentNode) oOBJECT.parentNode.removeChild(oOBJECT);
        return LODOP
    } catch (err) {
        alert('getLodop出错:' + err)
    }
};
//使用   LODOP.ADD_PRINT_BARCODE("11.91mm","2.12mm",108,50,"Code93",code);
    LODOP.SET_PRINT_STYLEA(0,"FontSize",7);
    LODOP.SET_PRINT_STYLEA(0,"Horient",2);
    LODOP.ADD_PRINT_TEXT(0,6,104,20,`姓名:${name}`);
    LODOP.ADD_PRINT_TEXT(14,6,104,20,`年龄:${age}岁`);
    LODOP.ADD_PRINT_TEXT(28,6,104,20,`性别:${['男', '女'][gender-1]}`);
    LODOP.ADD_PRINT_TEXT(103,6,104,14,`录入时间:${formatDate(createTime, 'YYYY-MM-DD')}`);
    LODOP.SET_PRINT_STYLEA(0,"FontSize",7);
}


export const printBarcode = function(info=[]) {
    let LODOP = getLodop();
    LODOP.PRINT_INITA('0mm','2mm','500mm','300mm', '孕前优生条形码打印');
    LODOP.SET_PRINT_MODE("PRINT_NOCOLLATE",1);
    info.forEach(item=>{
        LODOP.NewPage();
        printPage(item, LODOP);
    })
}

你可能感兴趣的:(c-loop打印)