EAN-13 wygląda jak 13 przypadkowych cyfr pod rzędem kresek, ale każda część ma konkretne znaczenie - zarówno w warstwie liczbowej, jak i w samym rysunku symbolu.

Co oznaczają cyfry

Pełny numer dzieli się na trzy logiczne części:

Anatomia symbolu - ciekawostka

Fizyczny rysunek kodu EAN-13 składa się z: znacznika startu, sześciu cyfr po lewej stronie, znacznika środkowego, sześciu cyfr po prawej stronie i znacznika końca - razem 12 cyfr narysowanych jako kreski. Ale numer ma przecież 13 cyfr. Gdzie jest pierwsza?

Pierwsza cyfra nie ma własnego wzoru kresek. Zamiast tego sześć cyfr z lewej strony koduje się na dwa różne sposoby (dwa różne układy szerokości kresek dla tej samej cyfry) - a to, który z tych dwóch układów zostanie użyty dla każdej z sześciu cyfr, tworzy wzór parzysty/nieparzysty, który sam w sobie koduje pierwszą cyfrę. Skaner odczytuje ten wzór parzystości i w ten sposób „domyśla się" pierwszej cyfry, mimo że nie odpowiada jej żadna osobna kreska. Prawa strona kodu koduje się już tylko jednym, stałym sposobem - stąd asymetria między lewą a prawą połową symbolu.

Symbol w liczbach: 95 modułów

Najwęższa kreska (lub przerwa) to moduł. Każda cyfra zajmuje dokładnie 7 modułów i składa się zawsze z dwóch kresek i dwóch przerw o różnych szerokościach. Całość sumuje się do 95 modułów, a wraz z cichymi strefami do 113:

ElementWzórModułów
Lewa cicha strefapuste pole11
Znak startu1013
6 cyfr lewej połowyzestaw L lub G42
Znak środkowy010105
6 cyfr prawej połowyzestaw R42
Znak stopu1013
Prawa cicha strefapuste pole7

W zapisie wzorów 1 oznacza moduł ciemny (kreskę), 0 - jasny. Znaki startu, środka i stopu są celowo dłuższe od pozostałych kresek - to te „wydłużone" linie widoczne na każdym kodzie EAN, które rozdzielają cyfry na dwie grupy po sześć. Przy module nominalnym 0,33 mm daje to szerokość 31,35 mm samych kresek; pełne wymiary w różnych skalach zebraliśmy w poradniku wymiary EAN-13 do druku.

Trzy zestawy wzorów: L, G i R

Każda cyfra ma trzy możliwe rysunki. Zestaw L (nieparzysty - ma nieparzystą liczbę ciemnych modułów) i zestaw G (parzysty) są używane w lewej połowie, zestaw R wyłącznie w prawej. Zestaw R to po prostu negatyw zestawu L, a G to odwrócone lustrzanie R. Na przykład cyfra 5 w zestawie L to 0110001, w R 1001110, a w G 0111001. Dzięki temu skaner po pierwszych kilku kreskach wie, czy czyta kod od lewej, czy od prawej strony - i potrafi odczytać symbol do góry nogami.

Układ zestawów L i G w lewej połowie zależy wyłącznie od pierwszej cyfry numeru:

Pierwsza cyfraZestawy dla cyfr 2-7Pierwsza cyfraZestawy dla cyfr 2-7
0L L L L L L5L G G L L G
1L L G L G G6L G G G L L
2L L G G L G7L G L G L G
3L L G G G L8L G L G G L
4L G L L G G9L G G L G L

Wiersz dla zera jest szczególny: wszystkie sześć cyfr w zestawie L, czyli dokładnie tak, jak koduje się UPC-A. To cały sekret zgodności obu formatów - kod UPC-A jest po prostu kodem EAN-13 z pierwszą cyfrą 0, co rozwijamy w poradniku EAN-13 a UPC-A.

Przykład: polski numer 5901234123457

Prefiks 590 wskazuje, że pulę przydzieliła GS1 Polska - nie mówi nic o kraju produkcji, tylko o organizacji, w której firma zarejestrowała numery. Pierwsza cyfra (5) ustala układ zestawów L G G L L G dla cyfr 9, 0, 1, 2, 3, 4 w lewej połowie. Cyfry 1, 2, 3, 4, 5 i cyfra kontrolna 7 trafiają do prawej połowy w zestawie R. Cyfra kontrolna wynika z pozostałych dwunastu (suma ważona 83, dopełnienie do 90 daje 7) - ale sama w symbolu niczym się nie wyróżnia, jest zwykłą cyfrą w zestawie R.

Częste pytania

Czy EAN-13 może zawierać litery?

Nie. Standard koduje wyłącznie cyfry 0-9. Jeżeli potrzebujesz liter albo dłuższej treści, sięgnij po Code-128 lub kod 2D - przegląd w poradniku rodzaje kodów kreskowych.

Dlaczego cyfry są wydrukowane pod kreskami?

To zapasowa ścieżka odczytu: gdy kod jest uszkodzony albo zamazany, kasjer wpisuje numer ręcznie. Standard wymaga ich obecności, a czcionka powinna być czytelna (zwykle OCR-B). Nasz generator umieszcza je automatycznie w prawidłowym układzie 1 - 6 - 6.

Skąd skaner wie, gdzie kończy się jedna cyfra, a zaczyna druga?

Z ustalonej siatki: po znaku startu każda kolejna cyfra to dokładnie 7 modułów. Skaner mierzy szerokość znaku startu, wyznacza z niej wielkość modułu i dalej dzieli symbol na siódemki. Dlatego tak ważne jest, żeby wszystkie kreski były w tej samej skali - o tym, co psuje tę siatkę przy druku, piszemy w poradniku jakość i weryfikacja kodu.

Dlaczego to ma znaczenie w praktyce

Dla kogoś, kto tylko generuje i drukuje kody, ta budowa jest niewidoczna - nasz generator EAN-13 rysuje poprawny wzór automatycznie. Warto ją jednak znać, jeśli: