From b3fb8fceeafb31806c67e1fc216a2446145150b7 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Tue, 3 Feb 2026 14:29:06 +0800 Subject: [PATCH] =?UTF-8?q?2026-02-03=20=E6=89=93=E5=8D=B0=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/mixins/labelPrintTemplates.js | 26 ++++----- .../boxManage/com_saleBoxManage_boxing.vue | 58 ++++++++++--------- 2 files changed, 45 insertions(+), 39 deletions(-) diff --git a/src/mixins/labelPrintTemplates.js b/src/mixins/labelPrintTemplates.js index b39c6e8..f49845c 100644 --- a/src/mixins/labelPrintTemplates.js +++ b/src/mixins/labelPrintTemplates.js @@ -83,7 +83,7 @@ export default { const fontSize = 6; // 字体大小 // 编码(第1行) - const label1 = LODOP.ADD_PRINT_TEXT('3.5mm', labelX, labelWidth, '3mm', '编码:'); + const label1 = LODOP.ADD_PRINT_TEXT('3.5mm', labelX, labelWidth, '3mm', 'No'); LODOP.SET_PRINT_STYLEA(label1, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(label1, "FontSize", fontSize); @@ -93,7 +93,7 @@ export default { LODOP.SET_PRINT_STYLEA(value1, "Bold", 1); // 型号(第2行) - const label2 = LODOP.ADD_PRINT_TEXT('7.5mm', labelX, labelWidth, '3mm', '型号:'); + const label2 = LODOP.ADD_PRINT_TEXT('7.5mm', labelX, labelWidth, '3mm', 'Type'); LODOP.SET_PRINT_STYLEA(label2, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(label2, "FontSize", fontSize); @@ -102,7 +102,7 @@ export default { LODOP.SET_PRINT_STYLEA(value2, "FontSize", fontSize); // 数量(第3行) - const label3 = LODOP.ADD_PRINT_TEXT('11.5mm', labelX, labelWidth, '3mm', '数量:'); + const label3 = LODOP.ADD_PRINT_TEXT('11.5mm', labelX, labelWidth, '3mm', 'Qty'); LODOP.SET_PRINT_STYLEA(label3, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(label3, "FontSize", fontSize); @@ -111,7 +111,7 @@ export default { LODOP.SET_PRINT_STYLEA(value3, "FontSize", fontSize); // 批号(第4行) - const label4 = LODOP.ADD_PRINT_TEXT('15.5mm', labelX, labelWidth, '3mm', '批号:'); + const label4 = LODOP.ADD_PRINT_TEXT('15.5mm', labelX, labelWidth, '3mm', 'Lot No'); LODOP.SET_PRINT_STYLEA(label4, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(label4, "FontSize", fontSize); @@ -170,35 +170,35 @@ export default { const fontSize = 4; // 字体大小(从7号改为4号) // 第1行:编码 - const text1 = LODOP.ADD_PRINT_TEXT('3mm', startX, textWidth, '3mm', `编码:${printData.partNo || ''}`); + const text1 = LODOP.ADD_PRINT_TEXT('3mm', startX, textWidth, '3mm', `No:${printData.partNo || ''}`); LODOP.SET_PRINT_STYLEA(text1, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text1, "FontSize", fontSize); // 第2行:卷号 - const text2 = LODOP.ADD_PRINT_TEXT('6.5mm', startX, textWidth, '3mm', `卷号:${printData.rollNo || ''}`); + const text2 = LODOP.ADD_PRINT_TEXT('6.5mm', startX, textWidth, '3mm', `Roll No:${printData.rollNo || ''}`); LODOP.SET_PRINT_STYLEA(text2, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text2, "FontSize", fontSize); // 第3行:良品 + 不良品(左右分布) // 良品(左侧) - const text3 = LODOP.ADD_PRINT_TEXT('10mm', startX, '24mm', '3mm', `良品:${printData.goodQuantity || ''}`); + const text3 = LODOP.ADD_PRINT_TEXT('10mm', startX, '24mm', '3mm', `Good Qty:${printData.goodQuantity || ''}`); LODOP.SET_PRINT_STYLEA(text3, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text3, "FontSize", fontSize); // 不良品(右侧) - const text4 = LODOP.ADD_PRINT_TEXT('10mm', '44mm', '24mm', '3mm', `不良品:${printData.badQuantity || ''}`); + const text4 = LODOP.ADD_PRINT_TEXT('10mm', '44mm', '24mm', '3mm', `Bad Qty:${printData.badQuantity || ''}`); LODOP.SET_PRINT_STYLEA(text4, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text4, "FontSize", fontSize); // 第4行:总数 + 良率(左右分布) // 总数(左侧) - const text5 = LODOP.ADD_PRINT_TEXT('13.5mm', startX, '24mm', '3mm', `总数:${printData.quantity || ''}`); + const text5 = LODOP.ADD_PRINT_TEXT('13.5mm', startX, '24mm', '3mm', `Total Qty:${printData.quantity || ''}`); LODOP.SET_PRINT_STYLEA(text5, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text5, "FontSize", fontSize); // 良率(右侧) const yieldValue = printData['yield'] || printData.yield || ''; - const yieldText = yieldValue ? `良率: ${yieldValue}%` : '良率:'; + const yieldText = yieldValue ? `Yield: ${yieldValue}%` : 'Yield:'; const text6 = LODOP.ADD_PRINT_TEXT('13.5mm', '44mm', '24mm', '3mm', yieldText); LODOP.SET_PRINT_STYLEA(text6, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text6, "FontSize", fontSize); @@ -304,17 +304,17 @@ export default { const fontSize = 5; // 字体大小(比A002稍大,因为只有3行) // 第1行:编码 - const text1 = LODOP.ADD_PRINT_TEXT('3.5mm', startX, textWidth, '4mm', `编码:${printData.partNo || ''}`); + const text1 = LODOP.ADD_PRINT_TEXT('3.5mm', startX, textWidth, '4mm', `No:${printData.partNo || ''}`); LODOP.SET_PRINT_STYLEA(text1, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text1, "FontSize", fontSize); // 第2行:卷号 - const text2 = LODOP.ADD_PRINT_TEXT('8mm', startX, textWidth, '4mm', `卷号:${printData.rollNo || ''}`); + const text2 = LODOP.ADD_PRINT_TEXT('8mm', startX, textWidth, '4mm', `Roll No:${printData.rollNo || ''}`); LODOP.SET_PRINT_STYLEA(text2, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text2, "FontSize", fontSize); // 第3行:良品 - const text3 = LODOP.ADD_PRINT_TEXT('12.5mm', startX, textWidth, '4mm', `良品:${printData.goodQuantity || ''}`); + const text3 = LODOP.ADD_PRINT_TEXT('12.5mm', startX, textWidth, '4mm', `Good Qty:${printData.goodQuantity || ''}`); LODOP.SET_PRINT_STYLEA(text3, "FontName", "Microsoft YaHei"); LODOP.SET_PRINT_STYLEA(text3, "FontSize", fontSize); } diff --git a/src/views/modules/boxManage/com_saleBoxManage_boxing.vue b/src/views/modules/boxManage/com_saleBoxManage_boxing.vue index 754ebe6..b959a3f 100644 --- a/src/views/modules/boxManage/com_saleBoxManage_boxing.vue +++ b/src/views/modules/boxManage/com_saleBoxManage_boxing.vue @@ -544,7 +544,7 @@ export default { handleSelectionChange(val) { this.selectedBoxes = val }, - // 打印外箱标签 + // 打印外箱标签 - 纸张尺寸:70mm x 20mm async printCartonLabels() { if (this.selectedBoxes.length === 0) { this.$message.warning('请选择要打印的外箱!') @@ -561,8 +561,8 @@ export default { // 初始化打印 LODOP.PRINT_INIT('外箱标签打印') - // 设置纸张尺寸:70mm x 30mm - LODOP.SET_PRINT_PAGESIZE(0, 700, 300, '') + // 纸张尺寸设置:宽度=700(70mm), 高度=200(20mm) + LODOP.SET_PRINT_PAGESIZE(0, 700, 200, '') // 循环打印每个选中的外箱 for (let i = 0; i < this.selectedBoxes.length; i++) { @@ -572,36 +572,42 @@ export default { LODOP.NEWPAGE() // 新页 } - // 绘制外边框 - LODOP.ADD_PRINT_RECT('2mm', '2mm', '66mm', '26mm', 0, 1) + // ===== 绘制边框和分隔线 ===== + // 外边框: ADD_PRINT_RECT(上边距, 左边距, 宽度, 高度, 线宽, 线型) + LODOP.ADD_PRINT_RECT('2mm', '2mm', '66mm', '16mm', 0, 1) - // 绘制中间竖线(左右分隔) - LODOP.ADD_PRINT_LINE('2mm', '46mm', '28mm', '46mm', 0, 1) + // 中间竖线(左右分隔): ADD_PRINT_LINE(起点Y, 起点X, 终点Y, 终点X, 线宽, 线型) + LODOP.ADD_PRINT_LINE('2mm', '50mm', '18mm', '50mm', 0, 1) - // 绘制左侧横线(NO.和Carton No.之间的分隔) - LODOP.ADD_PRINT_LINE('15mm', '2mm', '15mm', '46mm', 0, 1) + // 左侧横线(NO.和Carton No.之间): ADD_PRINT_LINE(起点Y, 起点X, 终点Y, 终点X, 线宽, 线型) + LODOP.ADD_PRINT_LINE('10mm', '2mm', '10mm', '50mm', 0, 1) - // 左侧文字信息 - NO. (上下居中) - const text1 = LODOP.ADD_PRINT_TEXT('6.5mm', '3mm', '40mm', '6mm', 'NO.: ' + (this.searchData.orderNo || '')) - LODOP.SET_PRINT_STYLEA(text1, "FontName", "Microsoft YaHei") - LODOP.SET_PRINT_STYLEA(text1, "FontSize", 9) - LODOP.SET_PRINT_STYLEA(text1, "Bold", 1) + // ===== 左侧文字信息 ===== + // NO.文字: ADD_PRINT_TEXT(上边距, 左边距, 宽度, 高度, 内容) + // 参数说明:上边距=4.5mm, 左边距=3mm, 宽度=46mm, 高度=5mm + const text1 = LODOP.ADD_PRINT_TEXT('4.5mm', '3mm', '46mm', '5mm', 'NO.: ' + (this.searchData.orderNo || '')) + LODOP.SET_PRINT_STYLEA(text1, "FontName", "Microsoft YaHei") // 字体 + LODOP.SET_PRINT_STYLEA(text1, "FontSize", 8) // 字号 + LODOP.SET_PRINT_STYLEA(text1, "Bold", 1) // 粗体 - // 左侧文字信息 - Carton No. (上下居中,单行显示) - const text2 = LODOP.ADD_PRINT_TEXT('19.5mm', '3mm', '40mm', '6mm', 'Carton No.: ' + (box.boxNo || '')) - LODOP.SET_PRINT_STYLEA(text2, "FontName", "Microsoft YaHei") - LODOP.SET_PRINT_STYLEA(text2, "FontSize", 9) - LODOP.SET_PRINT_STYLEA(text2, "Bold", 1) + // Carton No.文字: ADD_PRINT_TEXT(上边距, 左边距, 宽度, 高度, 内容) + // 参数说明:上边距=12.5mm, 左边距=3mm, 宽度=46mm, 高度=5mm + const text2 = LODOP.ADD_PRINT_TEXT('12.5mm', '3mm', '46mm', '5mm', 'Carton No.: ' + (box.boxNo || '')) + LODOP.SET_PRINT_STYLEA(text2, "FontName", "Microsoft YaHei") // 字体 + LODOP.SET_PRINT_STYLEA(text2, "FontSize", 8) // 字号 + LODOP.SET_PRINT_STYLEA(text2, "Bold", 1) // 粗体 - // 右侧二维码(使用 LODOP 原生二维码,调整居中位置) - // 向右移动1mm,向下移动1mm - const qrIndex = LODOP.ADD_PRINT_BARCODE('6mm', '48mm', '20mm', '20mm', 'QRCode', box.boxNo) - LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeVersion", 4) - LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeErrorLevel", "M") + // ===== 右侧二维码 ===== + // 二维码: ADD_PRINT_BARCODE(上边距, 左边距, 宽度, 高度, 类型, 内容) + // 参数说明:上边距=4mm, 左边距=52mm, 宽度=12mm, 高度=12mm + // 右侧区域:从50mm到68mm(宽18mm),高度16mm + const qrIndex = LODOP.ADD_PRINT_BARCODE('4mm', '53mm', '13mm', '13mm', 'QRCode', box.boxNo) + LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeVersion", 4) // 二维码版本 + LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeErrorLevel", "M") // 纠错级别 } - // 预览打印 - //LODOP.PREVIEW() + // 执行打印 + //LODOP.PREVIEW() // 取消注释可预览 LODOP.PRINT(); } catch (error) {