KuAILabel 快标签 快标签 · 深耕智能 AI 设计标签

条码扫不出来的 8 个原因与排查顺序

更新于 2026-09-05 · KuaiLabel 快标签

条码扫不出来,多数时候不是扫描枪坏了,而是标签本身有一处不合规:静区被文字挤掉、条码缩到 20mm 宽、打印时被缩放了 95%、贴在反光的 PET 膜上。这类问题肉眼看不出,却会让整批货在收货口卡住。本文把最常见的 8 个原因按发生概率排成一条排查链,每条给出判断方法和具体数值(毫米、位数、DPI),店主、仓管、质检员从上往下查,一般 10 分钟内能定位。排查前先抽 5 张扫:全不行看第 1~5 条,零星不行看第 6~7 条,换把枪就好看第 8 条。

原因 1:静区不足——最常见,也最容易被忽略

静区是条码左右两侧必须留空的白色区域,扫描枪靠它判断「条码从哪里开始、到哪里结束」。Code 128 规范要求两侧各留至少 10 个模块的空白;EAN-13 左侧 11 个模块、右侧 7 个模块。按常见的 0.33mm 模块宽度算,Code 128 两侧各要 3.3mm 以上,实际设计建议留 5mm。

静区被吃掉的典型场景:条码紧贴标签边缘、旁边紧挨一列文字或一条竖线、标签四周有黑色边框。扫描枪会把挨着的黑色当成条码的一部分,解码失败。判断方法:量条码最外侧一根竖条到最近的黑色内容(含标签边缘)的距离,小于 3mm 就是它。

原因 2:条码太小

条码越窄,单根竖条越细,打印机和扫描枪的误差占比就越大。KuaiLabel 校验器的下限是宽 25mm × 高 8mm(COD-02 规则):低于 25mm 宽,一段 10 位左右的 Code 128 每个模块会细到 0.2mm 以下,203 DPI 热敏打印机(每点 0.125mm)画不准;低于 8mm 高,扫描枪的光线稍微倾斜就扫不到完整的一行。

EAN-13 有自己的标准尺寸:100% 放大率是 37.29mm × 25.93mm,允许缩到 80%(约 29.8mm 宽)。零售扫描器对 80% 以下的 EAN 码识读率明显下降。判断方法:量条码本体(不含静区),宽 <25mm 或高 <8mm 就先放大再谈其他。

原因 3:打印时被缩放了

设计稿里 30mm 宽的条码,打印出来变成 28.5mm,往往是驱动里勾了「适应页面」或「缩放到 95%」。缩放会让每个模块变成非整数个打印点,打印机只能四舍五入,粗细条的比例就乱了。Code 128 靠 1:2:3:4 四种宽度区分符号,比例一乱就解不出。热敏机尤其敏感:203 DPI 下模块宽 0.33mm 本来就是 2.64 个点,再缩 5% 就彻底对不齐。

判断方法:打印一张,量条码实际宽度和设计值是否一致。差 0.5mm 以上就查驱动,把缩放改为 100%、关闭「适应纸张」,并确认驱动里的标签尺寸与实际卷纸一致。

原因 4:对比度不够、材质反光

扫描枪读的是反射光的差异,不是颜色。黑条白底最稳;深蓝、深绿条多数扫描枪也能读;红、橙、黄色的条几乎读不出,因为常见的红光扫描枪看红色和看白色一样亮。反过来,红色、黄色底配黑条是可以的。

材质方面:透明标签贴在深色瓶子上、条码印在银色 PET 或镀铝膜上、覆了亮膜的标签,都会因反光或底色不白而扫不出。透明或银色材质要先印一层白色打底。热敏纸打印过浅也算对比度问题:浓度设低、打印头老化、热敏纸不匹配,条会发灰。KuaiLabel 校验器会拦前景色太浅的条码(COD-04 规则),打印浓度则要在打印机上调。

原因 5:内容不符合码制规则

两种最常用的一维码规则完全不同。EAN-13 固定 13 位数字,最后一位是校验位,由前 12 位按「奇数位 ×1、偶数位 ×3 求和,补到 10 的整数倍」算出。手工输入 13 位或从别的系统复制时改了一位,校验位对不上,扫描枪会直接拒读——不显示错误,就是没反应。国内正式销售的商品条码要向中国物品编码中心申请厂商识别代码,前缀 690~699。

Code 128 没有位数限制,可以编数字、大小写字母和常见符号,但只能编 ASCII 字符:中文、全角标点、中文空格都编不进去。KuaiLabel 的一维码用的就是 Code 128,内容含中文会在校验时报 COD-01。另一个常见坑是内容首尾带了看不见的空格或换行,从 Excel 复制过来时尤其多。判断方法:逐字符核对,EAN-13 用 GS1 官网的计算器算一下校验位,Code 128 检查中文和首尾空白。

原因 6:条码下方没有可读数字

条码下面那行数字不是装饰。扫描枪读不出时,收银员或仓管可以手工输入,业务不至于停下;对账时也能肉眼核对内容。EAN-13 规范要求必须印可读数字;Code 128 不强制,但仓储物流场景都建议印。

可读数字用 OCR-B 或普通无衬线字体都可以,字号不小于 6pt,紧贴条码下方,和条码之间留 0.5~1mm。不要放在条码左右两侧,会吃掉静区。

原因 7、8:打印头耗材,以及扫描枪本身

只是零星几张扫不出,看条码上有没有贯穿整个高度的白线:那是打印头某个点烧坏或粘了纸屑,每张标签同一位置留下一条细白缝,正好把某根竖条切成两半。用无水酒精棉片擦打印头,擦完还有白线就得换打印头。

碳带打印机还要检查碳带和标签材质是否匹配:蜡基碳带印在 PET 上一蹭就掉,树脂碳带印在普通铜版纸上附着不牢。条上有掉墨、划痕,扫描枪就会把它当成空白。

标签排除完了再看扫描枪。很多扫描枪出厂只开启了 EAN/UPC,Code 128、Code 39 要扫设置手册上的条码开启。有的枪要求 EAN 码必须带附加码,也会导致部分码不读。使用距离也有讲究:普通激光枪和 CCD 枪的最佳距离是 5~25cm,条码越小要越近;扫描线要横跨整个条码包括两侧静区,贴着扫反而不行,光斑太小盖不住。

在 KuaiLabel 里把问题挡在打印之前

上面 8 条里,前 5 条在设计阶段就能发现。KuaiLabel 的校验器在导出前会自动跑一遍规则:条码小于 25×8mm 报 COD-02,内容含中文报 COD-01,前景色太浅报 COD-04,距标签边缘不足 2mm 报 LAY-03,和其他元素重叠报 LAY-01。每条问题都带「一键修正」,会把条码放大到下限、往标签内挪到边距内,或把颜色改成纯黑。Code 128 的静区内置在渲染里:编码器在两侧各加 10 个模块空白,画布上的条码框已含静区,只要框不和别的元素重叠,静区就不会被吃掉。

从零做带条码的标签,直接从模板起步更省事:「商品价签」自带条码 + 可读数字 + 价格的标准布局,「SKU 标签」和「库存标签」是仓储用的 Code 128 版式,「FBA 标签」按亚马逊入库要求预设了条码尺寸和字号。打开模板、绑定数据源、批量导出,校验器会对每条记录单独检查条码内容。

常见问题

条码用手机能扫出来,扫描枪扫不出来是怎么回事?

手机是拍照后用算法解码,容错比扫描枪高很多。先查扫描枪有没有开启对应码制(Code 128 常默认关闭),再查静区和条码尺寸:手机能凑合读的小条码,激光枪往往不行。

EAN-13 条码最后一位怎么算?

前 12 位从左到右编号,奇数位数字相加,偶数位数字相加后乘 3,两者求和,用 10 减去和的个位数就是校验位(结果为 10 时取 0)。GS1 官网有在线计算器,批量数据建议在表格里用公式算好再导入。

热敏打印机打出来的条码为什么有点糊?

先看打印浓度是否过高,浓度太高会让条变粗、空变窄,比例失真;再检查打印速度,条码建议用中低速。条码宽度要是打印点的整数倍,203 DPI 下模块宽 0.375mm(3 个点)或 0.5mm(4 个点)最清晰。

条码最小可以做多小?

KuaiLabel 校验器的下限是 25mm 宽、8mm 高,这是热敏打印机能稳定输出、普通扫描枪能稳定识读的边界。EAN-13 另有规范尺寸,最小缩到 80% 即约 29.8×20.7mm。小于这些尺寸不是不能印,而是识读率会明显下降。

条码可以做成竖着的吗?

可以,旋转 90° 放置扫描枪竖着扫即可。但旋转后要重新检查静区,原来上下方向的文字会变成左右方向,容易侵占静区;热敏机在竖向条码上更容易因打印头坏点断条,建议高度加大到 12mm 以上。

参考来源

按这个标准排好的模板

照着做:下面的模板已按文中的规则排好,打开后改成你的内容,导入 Excel 批量打印。

更多技术文章

Excel 批量打印标签怎么做:一行数据一张标签 · 标签排版的 7 条规则:边距、字号、对齐与层次 · 标签纸尺寸对照表:常见规格、适用场景与怎么选 · 标签打印出来尺寸不对?缩放、DPI 与纸张设置排查 · 二维码标签怎么做:内容、纠错等级与最小尺寸 · 热敏纸还是热转印?标签材质怎么选(铜版纸/PET/合成纸)