From 4274de59a48624ebfb3d2126c3e263841de3aaf4 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Fri, 6 Feb 2026 11:42:37 +0800 Subject: [PATCH] =?UTF-8?q?2026-02-06=20=E6=89=AB=E6=8F=8F=E8=A3=85?= =?UTF-8?q?=E6=89=98=E6=89=93=E5=8D=B0=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../boxManage/com_saleBoxManage_pallet.vue | 62 ++++++++++--------- 1 file changed, 32 insertions(+), 30 deletions(-) diff --git a/src/views/modules/boxManage/com_saleBoxManage_pallet.vue b/src/views/modules/boxManage/com_saleBoxManage_pallet.vue index be44df1..491f5e1 100644 --- a/src/views/modules/boxManage/com_saleBoxManage_pallet.vue +++ b/src/views/modules/boxManage/com_saleBoxManage_pallet.vue @@ -663,7 +663,7 @@ export default { handleSelectionChange(val) { this.selectedPallets = val }, - // 打印托盘标签 + // 打印托盘标签 - 纸张尺寸:70mm x 20mm(与扫描装箱打印一致) async printPalletLabels() { if (this.selectedPallets.length === 0) { this.$message.warning('请选择要打印的托盘!') @@ -680,8 +680,8 @@ export default { // 初始化打印 LODOP.PRINT_INIT('托盘标签打印') - // 设置纸张尺寸:100mm x 80mm - LODOP.SET_PRINT_PAGESIZE(0, 1000, 800, '') + // 纸张尺寸设置:宽度=700(70mm), 高度=200(20mm),与扫描装箱一致 + LODOP.SET_PRINT_PAGESIZE(0, 700, 200, '') // 循环打印每个选中的托盘 for (let i = 0; i < this.selectedPallets.length; i++) { @@ -691,40 +691,42 @@ export default { LODOP.NEWPAGE() // 新页 } - // 绘制外边框 - LODOP.ADD_PRINT_RECT('2mm', '2mm', '96mm', '76mm', 0, 1) + // ===== 绘制边框和分隔线 ===== + // 外边框: ADD_PRINT_RECT(上边距, 左边距, 宽度, 高度, 线宽, 线型) + LODOP.ADD_PRINT_RECT('2mm', '2mm', '66mm', '16mm', 0, 1) - // 绘制第一条横线(No. 下方) - LODOP.ADD_PRINT_LINE('20mm', '2mm', '20mm', '98mm', 0, 1) + // 中间竖线(左右分隔): ADD_PRINT_LINE(起点Y, 起点X, 终点Y, 终点X, 线宽, 线型) + // 竖线在55mm位置,左侧文字区域53mm,右侧二维码区域13mm + LODOP.ADD_PRINT_LINE('2mm', '55mm', '18mm', '55mm', 0, 1) - // 绘制第二条横线(Pallet No. 下方) - LODOP.ADD_PRINT_LINE('38mm', '2mm', '38mm', '98mm', 0, 1) + // 左侧横线(NO.和Pallet No.之间): ADD_PRINT_LINE(起点Y, 起点X, 终点Y, 终点X, 线宽, 线型) + LODOP.ADD_PRINT_LINE('10mm', '2mm', '10mm', '55mm', 0, 1) - // No. 文字信息(靠左,上下居中) - // No. 区域高度 18mm,文字垂直居中 - const text1 = LODOP.ADD_PRINT_TEXT('10mm', '5mm', '90mm', '8mm', 'No.: ' + (this.searchData.orderNo || '')) - LODOP.SET_PRINT_STYLEA(text1, "FontName", "Microsoft YaHei") - LODOP.SET_PRINT_STYLEA(text1, "FontSize", 12) - LODOP.SET_PRINT_STYLEA(text1, "Bold", 1) + // ===== 左侧文字信息 ===== + // NO.文字: ADD_PRINT_TEXT(上边距, 左边距, 宽度, 高度, 内容) + // 文字区域:从3mm到54mm,宽度52mm,字号5,Arial字体紧凑显示 + const text1 = LODOP.ADD_PRINT_TEXT('4.5mm', '3mm', '52mm', '5mm', 'NO:' + (this.searchData.orderNo || '')) + LODOP.SET_PRINT_STYLEA(text1, "FontName", "Arial") // 使用Arial,紧凑字体 + LODOP.SET_PRINT_STYLEA(text1, "FontSize", 5) // 5号字体 + LODOP.SET_PRINT_STYLEA(text1, "Bold", 1) // 粗体 - // Pallet No. 文字信息(靠左,上下居中) - // Pallet No. 区域高度 18mm,文字垂直居中 - const text2 = LODOP.ADD_PRINT_TEXT('28mm', '5mm', '90mm', '8mm', 'Pallet No.: ' + (pallet.palletNo || '')) - LODOP.SET_PRINT_STYLEA(text2, "FontName", "Microsoft YaHei") - LODOP.SET_PRINT_STYLEA(text2, "FontSize", 12) - LODOP.SET_PRINT_STYLEA(text2, "Bold", 1) + // Pallet No.文字: ADD_PRINT_TEXT(上边距, 左边距, 宽度, 高度, 内容) + const text2 = LODOP.ADD_PRINT_TEXT('12.5mm', '3mm', '52mm', '5mm', 'Pallet No:' + (pallet.palletNo || '')) + LODOP.SET_PRINT_STYLEA(text2, "FontName", "Arial") // 使用Arial + LODOP.SET_PRINT_STYLEA(text2, "FontSize", 5) // 5号字体 + LODOP.SET_PRINT_STYLEA(text2, "Bold", 1) // 粗体 + + // ===== 右侧二维码 ===== + // 二维码: ADD_PRINT_BARCODE(上边距, 左边距, 宽度, 高度, 类型, 内容) + // 右侧区域:从55mm到68mm(宽13mm),二维码12.6mm x 12.6mm,居中显示 + const qrIndex = LODOP.ADD_PRINT_BARCODE('4mm', '56mm', '12.6mm', '12.6mm', 'QRCode', pallet.palletNo) + LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeVersion", 3) // 二维码版本3,适中大小 + LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeErrorLevel", "L") // L级纠错,适合小尺寸 - // 二维码(在下方区域居中,向上移动) - // 下方区域:38mm到78mm = 40mm高度 - // 二维码40mm,左右居中:2mm + (96mm-40mm)/2 = 30mm - // 垂直居中:38mm - const qrIndex = LODOP.ADD_PRINT_BARCODE('41mm', '30mm', '40mm', '40mm', 'QRCode', pallet.palletNo) - LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeVersion", 5) - LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeErrorLevel", "M") } - // 预览打印 - //LODOP.PREVIEW() + // 执行打印 + //LODOP.PREVIEW() // 取消注释可预览 LODOP.PRINT(); } catch (error) {