跳到主要内容
PulsarKit

条形码生成器

生成EAN、UPC、CODE128、CODE39、ITF-14、MSI、pharmacode或codabar条形码,校验位自动算好。

如何生成条形码

  1. 1

    选择条形码格式

    支持九种格式。零售商品在世界大部分地区用EAN-13,在北美用UPC-A;运输纸箱用ITF-14;内部用途一般选CODE128,它既能编码数字,也能编码字母。

  2. 2

    输入数值并设置尺寸

    预览随输入实时重绘,格式带校验位时,校验位会自动出现。条宽、高度、边距、标注文字和两种颜色都可以调整。

  3. 3

    下载PNG或SVG

    单个条码下载为一个文件,文件名就是它的数值。打开列表模式可以粘贴最多500个数值,得到一个ZIP压缩包,每行一个文件,另附一份报告,列出不符合格式的行。

校验位从哪里来

EAN-13、EAN-8、UPC-A和ITF-14的最后一位都不是数据,而是算出来的:每隔一位乘以三,其余各位乘以一,把乘积相加,校验位就是把这个和补到十的倍数所需的那个数。它的作用是让扫描器分清误读和真实的条码。EAN-13输入十二位数字,第十三位会自动补上;输入全部十三位,则改为校验你输入的那一位,对不上时会给出正确的数字。输错一位数字,几乎总会让校验和对不上,这正是校验位的用途。

什么场景用什么格式

EAN-13和UPC-A用于在收银台销售的商品,两者都需要向GS1注册的厂商识别代码。自己编的条码能扫出来,但在别人的系统里没有任何意义。EAN-8是小包装用的短版本。ITF-14印在外包装箱上。CODE128是内部标签最常用的格式:支持整个ASCII字符范围,长度任意。CODE39更老,只支持数字、大写字母和少量标点,同样的内容条码更宽。MSI常见于货架标签,pharmacode用于药品包装,codabar用于图书馆和血库。

条宽、对比度,以及能不能扫出来

线性扫描器需要足够宽、能分辨清楚的条,还需要能做阈值判断的深色对浅色对比。每个模块一个像素,打印出来对激光扫描器往往太细;两到三个像素更稳妥。彩色条码是实际使用中扫不出来的常见原因,所以对比度低于3:1的颜色组合会直接拒绝,低于4.5:1的会给出提示。两侧要留出静区:紧贴标签边缘印的条码,就是读不出来的条码。

数值不会离开你的浏览器

每个条码都在这个标签页里用JavaScript和画布绘制。商品编码、批号和内部SKU不会上传、记录或保存到任何地方,500行列表的ZIP压缩包也在你自己设备的内存里生成。

常见问题

EAN和UPC有什么区别?

UPC-A有十二位数字,是北美标准;EAN-13有十三位,几乎在其他所有地区使用。以0开头的EAN-13,就是前面多了一个0的UPC-A,现在的收银系统两种都能读。

校验位是怎么算出来的?

由它前面的各位数字算出:权重三和一交替,乘积相加,再用下一个十的倍数减去这个和。输入时不带校验位,会自动补上;带上校验位,则会校验它。

商店里卖的商品用什么条码格式?

世界大部分地区用EAN-13,美国和加拿大用UPC-A。两者都需要GS1分配的厂商识别代码。这个工具会画出你输入的任何内容,但只有注册过的编号,才能在零售商的系统里对应到你的商品。

普通打印机能打印这些条码吗?

能,600 DPI的激光打印机完全可以胜任。打印SVG而不是PNG,条会最清晰;用普通白纸或哑光标签纸,打印出来后不要再缩放。

扫描器需要多宽的条?

按经验,成品上最窄的条不要小于0.25 mm。把条宽设为每个模块两到三个像素,再按原尺寸打印,大多数标签尺寸都能达到这个要求。

一次能生成多少个条形码?

一次最多500个数值。每行粘贴一个,就能得到一个ZIP压缩包,每个数值一个文件。不符合所选格式的行会列在压缩包里的errors.csv中,不会中断其余的行。

彩色条形码为什么扫不出来?

扫描器看的是对比度,不是颜色,而且很多扫描器用红光,红色的条在红光下几乎看不见。白底黑条最可靠;正因如此,这里直接拒绝对比度低于3:1的颜色组合。

相关工具