关于条码打印,最让人窝火的学法,是在收货口——扫描枪对着你一小时前生成的码"哔"地拒读。屏幕上它明明完美。到了纸上,却糊成一片,读码器碰都不碰。打印比屏幕挑剔得多,而有那么几件小事,决定了你的码是一次就扫出来,还是白白耗掉大家的时间。

要打印的,一律导出 SVG

打印出来真能扫的条形码——SVG、尺寸和静区 — visual 1
要打印的,一律导出 SVG

如果条码要送去打印,导出成 SVG,别用 PNG。SVG 是矢量格式:条是用图形描述的,不是像素,所以在任何尺寸、任何打印机分辨率下都保持锐利。把一张 SVG 放进标签模板、包装排版或一版不干胶标签里,每一条边都印得清清楚楚。

PNG 则相反,它是一张固定的像素网格。放大到更大的标签上,原本干净的边就变软、变成锯齿——正是这种模糊,让细条糊到一起、让扫描枪放弃。PNG 拿来快速预览或做屏幕样机没问题;真要打印的成品,请用 SVG。

给它留静区

打印出来真能扫的条形码——SVG、尺寸和静区 — visual 2
给它留静区

这是打印条码扫不出来最常见的一个原因,而且它不是一个你去点开的设置——它是空白。静区就是条码左右两侧的空白边距。扫描枪靠这块留白来找到码从哪开始、到哪结束;没有它,读码器根本锁不住。

所以你在设计里放条码时,别贴着最外侧那根条裁死,也别让它顶着边框、文字或花哨的背景。两侧都留出一条舒服的纯色背景带——一个粗略的经验法则是,至少留出大约十根最窄条那么宽。拿不准时,宁可多留,别少留。

尺寸和条宽

有两样东西决定你的码有多"粗"。条宽(模块宽度)是最窄那根条的粗细。设得太细,打印机印不出干净的线;墨会洇、碳粉会散,相邻的条糊到一块。要是一个码扫不出来,把条稍微加宽往往就能解决。条高只要够扫描枪横着扫过一条干净的线就行,哪怕稍微有点斜。

别为了塞进一张挤巴巴的标签就把条码缩小。物理上太小的码,会把最窄的条压到你打印机印不干净的程度。给条码留够它需要的地方,好过硬挤然后碰运气。

对比度:深色条,浅色底

扫描枪靠深条和浅缝之间的差异来读码,所以对比度就是一切。稳妥的选择是白底黑条。这个工具允许你设前景色和背景色,配合设计很方便——但浅色的条、深色的底,或者对比度低的搭配(比如灰盒子上印藏青色条),都是扫描失败的头号原因。红色也危险:很多红光激光扫描枪根本看不清红色的条。拿不准就白底黑条。

保留文字那一行

除非有特别的理由,把条下方那行可读文字留着开启。扫描失败时——标签蹭花了、角度不对、贴纸磨损了——人还能读出号码手动敲进去。那一小行文字是你的兜底,而且它不花你一分钱。

打印前快速自检

  • 送打印的是 SVG
  • 两侧留足静区,没有东西挤着条。
  • 条宽对你的打印机来说不算太细;条码没为塞进去而缩小。
  • 白底黑条,或至少强对比度。
  • 可读文字那一行留着开启。
  • 打一张测试样,用你生产时实际要用的那台设备去扫——这才是唯一真正算数的测试。