// utils/printTemplate.js export function printTemplate(printData) { try { let str1 = printData.strp1; let str2 = printData.strp2; let str3 = printData.strp3; let str4 = printData.strp4; let str5 = printData.strp5; let str6 = printData.strp6; let str7 = String(printData.strp7); let str8 = printData.strp8; // 条码 let str7_1 = "", str7_2 = "", str7_3 = "", str7_4 = ""; // 规格型号字符串初始化 if (str7.length > 16) { str7_1 = str7.substring(0, 16); if (str7.length > 32) { str7_2 = str7.substring(16, 32); if (str7.length > 48) { str7_3 = str7.substring(32, 48); str7_4 = str7.substring(48, 64); } else { str7_3 = str7.substring(32); } } else { str7_2 = str7.substring(16); } } else { str7_1 = str7; } let printCmd = "SIZE 80 mm,60 mm\r\n"+ "GAP 2 mm\r\n"+ "CLS\r\n"+ "! 0 400 420 480 1\r\n" + "PREFEED 0\n\r" + "POSTFEED 0\n\r" + "PAGE - WIDTH 640\r\n" + "GAP-SENSE\r\n" + "BOX 5 10 620 450 2\r\n" + "LINE 5 60 620 60 1\r\n" + // 横线1 "LINE 5 110 620 110 1\r\n" + // 横线2 "LINE 5 160 620 160 1\r\n" + // 横线3 "LINE 5 210 620 210 1\r\n" + // 横线4 "LINE 5 260 620 260 1\r\n" + // 横线5 "LINE 5 310 620 310 1\r\n" + // 新增的横线 "LINE 120 10 120 310 1\r\n" + // 字段名称右侧竖线延伸 "LINE 240 310 240 450 1\r\n" + // 规格型号左侧竖线 "LINE 285 210 285 450 1\r\n" + // 规格型号右侧竖线 "LINE 410 210 410 310 1\r\n" + // 到货日期右侧竖线延伸 "TEXT 24 0 15 25 条码编号 " + str1 + "\r\n" + "TEXT 24 0 15 75 产品料号 " + str2 + "\r\n" + "TEXT 24 0 15 125 产品名称 " + str3 + "\r\n" + "TEXT 24 0 15 175 工单号 " + str5 + "\r\n" + "TEXT 24 0 15 225 生产部门 " + str4 + "\r\n" + "TEXT 24 0 300 225 日期 " + str6 + "\r\n" + "TEXT 24 0 15 275 条码数量 " + str9 + "\r\n" + // New field 1 "TEXT 24 0 300 275 报工人 " + str10 + "\r\n" + // New field 2 "TEXT 24 0 290 339 " + str7_1 + "\r\n" + // Shifted content "TEXT 24 0 290 367 " + str7_2 + "\r\n" + // Shifted content "TEXT 24 0 290 395 " + str7_3 + "\r\n" + // Shifted content "TEXT 24 0 290 423 " + str7_4 + "\r\n" + // Shifted content "TEXT 24 0 250 330 规\r\n" + // Shifted "TEXT 24 0 250 363 格\r\n" + // Shifted "TEXT 24 0 250 396 型\r\n" + // Shifted "TEXT 24 0 250 429 号\r\n" + // Shifted "B QR 35 325 M 2 U 5\r\n" + // 下方二维码 shifted to make room for new row "MA," + str8 + "\r\n" + "ENDQR\r\n" + "FORM\r\n" + "PRINT 1\r\n"; return printCmd; } catch (err) { console.log("printErr:" + err); return ""; } } // 打印模板 2: 包装标签打印 export function printTemplate2(printData) { try { var str1 = printData.strp1; var str2 = printData.strp2; // 为第二个模板定义其他必要的变量... var printCmd = "! 0 400 400 480 1\r\n" + "PREFEED 0\n\r" + "POSTFEED 0\n\r" + "PAGE - WIDTH 640\r\n" + // 适用于包装标签的打印命令... "PRINT\r\n"; return printCmd; } catch (err) { console.log("printErr:" + err); return ""; } } // 更多打印模板可以在这里定义,如 printTemplate3, printTemplate4 等 export function printTemplate3(printData) { try { let str1 = printData.strp1; let str2 = printData.strp2; let str3 = printData.strp3; let str4 = printData.strp4; let str5 = printData.strp5; let str6 = printData.strp6; let str7 = String(printData.strp7); let str8 = printData.strp8; // 条码 let str9 = printData.strp9; // 条码 let str10 = printData.strp10; // 条码 let str7_1 = "", str7_2 = "", str7_3 = "", str7_4 = ""; // 规格型号字符串初始化 if (str7.length > 16) { str7_1 = str7.substring(0, 16); if (str7.length > 32) { str7_2 = str7.substring(16, 32); if (str7.length > 48) { str7_3 = str7.substring(32, 48); str7_4 = str7.substring(48, 64); } else { str7_3 = str7.substring(32); } } else { str7_2 = str7.substring(16); } } else { str7_1 = str7; } let printCmd = "! 0 400 420 480 1\n" + "PREFEED 0\n" + "\n"+ "POSTFEED 0\n" + "\n"+ "PAGE - WIDTH 640\n" + "GAP-SENSE\n" + "BOX 5 10 620 450 2\n" + "LINE 5 60 620 60 1\n" + // 横线1 "LINE 5 110 620 110 1\n" + // 横线2 "LINE 5 160 620 160 1\n" + // 横线3 "LINE 5 210 620 210 1\n" + // 横线4 "LINE 5 260 620 260 1\n" + // 横线5 "LINE 5 310 620 310 1\n" + // 新增的横线 "LINE 120 10 120 310 1\n" + // 字段名称右侧竖线延伸 "LINE 240 310 240 450 1\n" + // 规格型号左侧竖线 "LINE 285 210 285 450 1\n" + // 规格型号右侧竖线 "LINE 410 210 410 310 1\n" + // 到货日期右侧竖线延伸 "TEXT 24 0 15 25 条码编号 " + str1 + "\n" + "TEXT 24 0 15 75 产品料号 " + str2 + "\n" + "TEXT 24 0 15 125 产品名称 " + str3 + "\n" + "TEXT 24 0 15 175 工单号 " + str5 + "\n" + "TEXT 24 0 15 225 生产部门 " + str4 + "\n" + "TEXT 24 0 300 225 日期 " + str6 + "\n" + "TEXT 24 0 15 275 条码数量 " + str9 + "\n" + // New field 1 "TEXT 24 0 300 275 报工人 " + str10 + "\n" + // New field 2 "TEXT 24 0 290 339 " + str7_1 + "\n" + // Shifted content "TEXT 24 0 290 367 " + str7_2 + "\n" + // Shifted content "TEXT 24 0 290 395 " + str7_3 + "\n" + // Shifted content "TEXT 24 0 290 423 " + str7_4 + "\n" + // Shifted content "TEXT 24 0 250 330 规\n" + // Shifted "TEXT 24 0 250 363 格\n" + // Shifted "TEXT 24 0 250 396 型\n" + // Shifted "TEXT 24 0 250 429 号\n" + // Shifted "B QR 35 325 M 2 U 5\n" + // 下方二维码 shifted to make room for new row "MA," + str8 + "\n" + "ENDQR\n" + "FORM\n" + "PRINT\n"; return printCmd; } catch (err) { console.log("printErr:" + err); return ""; } }