使用方法
条形码读取上传分两种用法:
- 看图:点「上传条形码图片」选一张本地图片,页面只做本地预览,不发送到任何服务器。
- 验码:把条码下方的数字敲进输入框,演示 6901234567892。
- 点「校验条码」,结果区给出是否合法、校验位以及国家/地区前缀。
- 点「复制结果」把结论带走。
条形码读取上传能解决什么
它适合这些场景:
- 核对录入:手工录入商品条码后,验一下校验位,防止敲错。
- 识别来源:看前几位判断是哪个国家/地区分配的前缀段。
- 学习理解:明白 EAN 条码最后一位不是随便写的,而是算出来的。
本页不做的事:不做图像识别——上传的图片只用于预览,不会自动读出数字;条码数字需要你手动输入。
原理和变量
① 用了哪个具体函数:EAN-13 校验先把前 12 位逐位乘权(从左起第 1 位×1、第 2 位×3 交替),求和对 10 取补码得到校验位。
② 关键参数为什么这样取:权重 1 与 3 交替是 EAN/UPC 标准的固定规则,不是随意选的;它能让相邻位互换或单点错误更容易被检出。
③ 遵循哪个标准:遵循 GS1 的 EAN-13 与 EAN-8 校验规则,前 3 位按 GS1 前缀划分国家/地区。
④ 输入怎么变成输出:6901234567892 前 12 位按 1/3 加权求和后取补,校验位应为 2,与实际一致 → 合法;前缀 690 → 中国。
⑤ 边界与阈值:仅接受纯数字;位数必须是 8 或 13,其他位数会提示;含空格或字母会报错。
⑥ 常见误用的正确解释:校验位合法只能说明号码结构正确,不代表商品真实存在;上传图片也不会自动读取条码,请手动输入数字。
完整示例
演示输入 6901234567892(13 位)。校验推导:
- 取前 12 位:6 9 0 1 2 3 4 5 6 7 8 9。
- 从左起奇数位(第 1、3、5…)乘 1,偶数位乘 3,求和:6 + 27 + 0 + 3 + 2 + 9 + 4 + 15 + 6 + 21 + 8 + 27 = 128。
- 128 对 10 取补得到校验位:2,与第 13 位一致。
- 结论:合法;前缀 690 属于中国。
把最后一位改成 3 会立刻被判为「校验位不符」。演示仅作说明。
输入范围与对照表
常见 GS1 前缀段与国家/地区对照(节选):
| 前缀 | 国家/地区 | 长度 |
|---|---|---|
| 690~699 | 中国 | 13 |
| 000~019 | 美国/加拿大 | 13 |
| 300~379 | 法国 | 13 |
| 400~440 | 德国 | 13 |
| 450~459 / 490~499 | 日本 | 13 |
| 880 | 韩国 | 13 |
| 885 | 泰国 | 13 |
| 471 | 中国台湾 | 13 |
| 489 | 中国香港 | 13 |
| 958 | 中国澳门 | 13 |
| 977 | 连续出版物(ISSN) | 13 |
| 978 / 979 | 图书(ISBN) | 13 |
结果边界和舍入
本工具只做整数校验位验算,不涉及舍入。注意:能通过校验位检验,只说明这串数字符合 EAN 的构成规则,并不保证该商品已注册或存在;反过来,校验位不符则说明号码一定有问题(多为录入错误)。
常见问题
上传图片后会自动读出条码吗?
不会。受浏览器能力限制,本页只做图片本地预览,条码数字需你手动输入后再校验。
支持哪些条码类型?
校验位验算支持 EAN-13 与 EAN-8;其他类型(如 Code128)本页不做校验。
为什么校验位合法也不代表商品真实?
校验位只验证数字结构,商品是否注册由 GS1 数据库决定,本页不联网查询。
690 开头是什么意思?
690~699 是分配给中国的 GS1 前缀段,说明该条码由中国物品编码中心发放。
最后一位算错了会怎样?
页面会提示「校验位不符」,并给出应有的校验位,方便你修正。
图片会上传吗?
不会。图片仅在浏览器本地预览,不发送到服务器。
位数不对可以吗?
只接受 8 位或 13 位纯数字,其他位数或含字母会提示。
能一次校验多个条码吗?
一次一个。多个条码请分别输入校验。