EAN-13、UPC-A 或 Code 128:條碼怎麼選

並不是所有條碼的用途都一樣:有些是為了在商店販售商品,有些則是用來標示你公司或家裡的物品。這篇文章會說明各種格式的用途、用範例一步步算出檢查碼,以及怎麼讓掃描器一次就讀到。

更新日期:

各種格式的用途

abcsyg.com 的條碼產生器提供五種格式。主要的差別不在外觀,而在於能放哪些字元,以及號碼要由誰提供。

產生器五種格式的比較
格式內容典型用途
EAN-1313 位數字(12 位資料與 1 位檢查碼)世界大部分地區商店販售的商品
UPC-A12 位數字(11 位資料與 1 位檢查碼)美國與加拿大販售的商品
EAN-88 位數字(7 位資料與 1 位檢查碼)非常小、放不下 EAN-13 的包裝
Code 128不含重音的字母、數字與鍵盤上的符號物流、運送、庫存、識別證
Code 39大寫字母、數字與 - . $ / + % 及空格較老的格式,用於工業,幾乎所有掃描器都讀得到

實用原則:如果條碼要用來識別在商店販售的商品,就用 EAN-13 或 UPC-A。其他任何用途(箱子、貨架、檔案編號、設備、訂單),Code 128 都是最方便的選擇,因為它能放文字與數字,也不依賴任何組織。

EAN-13 檢查碼怎麼算

EAN-13 的最後一位數字不是資料:它是用其他十二位算出來的驗證碼,用來偵測輸入或印刷錯誤。算法如下,以十二位數字 400638133393 為例。

  1. 寫下十二位數字,並從左邊開始交替給它們權重,先是 1 再是 3:1、3、1、3、1、3、1、3、1、3、1、3。
  2. 把每個數字乘以它的權重:4×1 = 4、0×3 = 0、0×1 = 0、6×3 = 18、3×1 = 3、8×3 = 24、1×1 = 1、3×3 = 9、3×1 = 3、3×3 = 9、9×1 = 9、3×3 = 9。
  3. 把結果加起來:4 + 0 + 0 + 18 + 3 + 24 + 1 + 9 + 3 + 9 + 9 + 9 = 89。
  4. 找出差多少會到下一個 10 的倍數:從 89 到 90 差 1。這就是檢查碼。
  5. 完整的條碼是 4006381333931。如果總和剛好是 10 的倍數,檢查碼就是 0。

如果你只改了其中一位數字,最後一位沒變,運算就對不上,掃描器會捨棄這次讀取,而不是給出錯誤的號碼。因此,當你輸入 13 位數字而最後一位不吻合時,產生器會告訴你應該是多少;如果只輸入前 12 位,它會替你算出來並加上去。

UPC-A 與 EAN-8:同樣的算法,不同的長度

UPC-A 的概念相同,只是有 11 位資料。範例:03600029145。奇數位置(第 1、3、5……位)的數字加起來是 0 + 6 + 0 + 2 + 1 + 5 = 14,再乘以 3 得 42。偶數位置的數字加起來是 3 + 0 + 0 + 9 + 4 = 16。總和:42 + 16 = 58,到 60 差 2。完整的條碼是 036000291452。

UPC-A 等同於以 0 開頭的 EAN-13:同樣的號碼前面加一個 0,會得到 0036000291452,檢查碼也相同。因此現代的掃描器兩種都讀得懂。

在 EAN-8 中,權重的交替順序相反(從左邊開始是 3、1、3、1、3、1、3)。以 7351353 為例:21 + 3 + 15 + 1 + 9 + 5 + 9 = 63,到 70 差 7。條碼是 73513537。

重要提醒:號碼由 GS1 分配

用號碼產生出條碼圖案,並不代表你有權使用這個號碼。想在商店或要求條碼的網路商店販售商品,EAN 與 UPC 號碼必須透過管理這些條碼的組織 GS1,通常是經由你所在國家的分支機構,分配給你的公司。這些號碼由 GS1 按公司預留,避免兩家製造商得到相同的號碼。

產生器能正確畫出條碼,但它不知道你輸入的號碼是不是已經屬於其他商品,也不會登記。如果你自己編了一個 EAN-13 貼在要販售的商品上,它可能和其他品牌撞號,造成購買者庫存管理的混亂。

內部使用的情況就不同:自家庫存、貨架、箱子、檔案編號、設備或活動入場券。這時你可以用 Code 128 搭配任何你想要的編碼,甚至自己編一個 EAN-13,只要這個條碼不會流出你的組織之外。

大小、對比與留白區

大部分掃不到的條碼,問題出在印刷方式,而不是號碼。印出來之前先檢查這幾點:

PNG 或 SVG:什麼時候用哪一種

產生器可以下載 PNG 或 SVG 格式的條碼。PNG 是像素圖片:適合貼到文件、試算表或固定大小的標籤。如果事後放大,線條邊緣會模糊,可能不容易讀取。

SVG 是向量圖形:可以縮放到任何尺寸而不失真,所以最適合印刷廠、包裝設計或大型海報。如果不確定,兩種都下載:PNG 日常使用,SVG 當作備份的原稿。

印 500 張標籤之前先測試

把條碼顯示在螢幕上(或只印一張測試頁),用手機相機或你使用的條碼掃描 App 掃一掃。確認讀到的號碼和你輸入的完全一樣。

也要用標籤上的實際大小、相同的紙張與相同的印表機來測試。在螢幕上讀得很好的條碼,用品質不佳的熱感應印表機或在光面紙上可能會失敗。如果失敗了,先試試更粗的線條、更多的留白或更白的背景,再考慮換格式。

常見問題

我可以自己編一個 EAN-13 來販售商品嗎?

如果要在商店或要求條碼的平台販售,你需要 GS1 分配給你公司的號碼。自己編的號碼可能和其他商品相同。內部庫存則可以使用任何你想要的編碼。

EAN-13 和 UPC-A 有什麼差別?

EAN-13 有 13 位數字,是世界大部分地區的標準;UPC-A 有 12 位,用於美國與加拿大。UPC-A 就等於以 0 開頭的 EAN-13,現代的掃描器兩種都讀得懂。

自家庫存用哪種格式比較好?

Code 128:可使用不含重音的字母、數字與鍵盤上的符號,體積小巧,也不需要向任何組織登記號碼。

為什麼我的 EAN-13 條碼無效?

最可能的原因是最後一位數字和前十二位算出的結果不符。產生器會顯示應該是多少,如果你只輸入前 12 位,它也會自動算出來。

我輸入的號碼會被上傳到伺服器嗎?

不會。條碼是在你的瀏覽器中畫出來的,不會傳送到任何伺服器。