返回指南

条形码生成完全指南:原理、常见码制与批量生成实战

从编码原理到生产落地:条形码是怎么工作的,Code 128、EAN-13、UPC-A、QR Code 等码制对比,以及如何生成和批量导出。

条形码到底是什么

条形码把一串数据(数字/字母)编码成条形与空白的图案,光学读取器能快速解码。要点如下:

  • 编码规则: 每种码制都有固定的字符集与起始/终止字符(如 Code 128 的起始/终止符)。
  • 校验位: 部分格式(EAN-13、UPC-A)会按加权算法追加一个校验位,用来捕获录入错误。
  • 静区: 两侧留白,通常为模块宽度的 10 倍,否则符号扫不出来。

常见码制对比

格式类型容量典型用途
Code 1281D可变,全 ASCII物流、仓储、内部追溯
EAN-131D13 位零售商品
UPC-A1D12 位北美零售
Code 391D43 字符工业、汽车
QR Code2D最高约 7 KB签到、跳转、追溯
Data Matrix2D高密度电子、医疗部件打标
PDF4172D大段文本证件、物流单据

选型建议:

  • 内部 ID / 序列号 → Code 128(高密度、全字符集)。
  • 对外零售商品 → 向 GS1 申请 EAN-13 / UPC-A。
  • 手机交互(扫码跳转)→ QR Code。

如果不确定该用哪种码制,先看 该选哪种条形码。

生成方式:编程还是在线

编程方式(Node / Python): bwip-js(JS)或 python-barcode(Python)这类库可以把生成嵌入流程并自动化。缺点是换格式就要改代码,非技术同事用不了。

下面是 python-barcode 的 Python 示例:

import barcode
from barcode.writer import ImageWriter

# Generate a Code 128 barcode from a value
value = "A-01-01"
rv = barcode.get("code128", value, writer=ImageWriter())
rv.save("bin-label")  # writes bin-label.png

在线生成: 更适合运营/仓库自助使用,也方便快速验证格式。本站 在线条形码生成器 覆盖 35+ 种格式,亮点包括:

  • 在浏览器里运行——免安装、免登录。
  • 批量模式: 上传 CSV 或粘贴文本列表,一键生成整批。
  • 导出 PNG / SVG;SVG 可直接进设计文件或打印。
  • 内置扫描器和标签打印——从生成到贴标一步到位。仓库流程也可参考 批量生成 Code 128。

批量生成的实战

以"批量打印仓库货位标签"为例:

  1. 准备数据:一列货位 ID(如 A-01-01 … A-12-30)存成 CSV。
  2. 在工具里选 Code 128(用 Code 128 生成器)并导入 CSV。
  3. 设置模块宽度、高度以及是否显示人眼可读文字。
  4. 批量导出 PNG(用于打印)或 SVG(用于矢量归档)。
  5. 配标签纸,用 条形码标签打印工具 直接输出。

整套流程几分钟搞定——远比手写或一张张截图快。

生产注意事项

  • 分辨率: 打印 ≥300 DPI;PNG 适合屏幕,打印优先用 SVG。
  • 规范: 条码高度和窄条宽度要符合标准——太小就扫不出。
  • 静区: 不要裁掉两侧留白。
  • 数据有效性: 让工具计算 EAN-13 / UPC-A 的校验位,不要手输。内部码(Code 128)可自行定义,但要保证系统内一致。

小结

条形码生成并不复杂——关键在于"选对格式 + 批量产出 + 合规输出"。对大多数非工程场景,一个好用的 免费在线条形码生成器 能覆盖约 80% 的需求;工程侧则把库集成进系统做自动化。两者结合最高效。

相关阅读


觉得这篇指南有用?☕

如果这篇指南节省了你的时间,欢迎支持这个项目——这能帮我们把条形码生成器一直免费下去。

Buy Me a Coffee at ko-fi.com