Die Darstellung der EAN als Strichcodierung erfolgt in zwei Blöcken:
Der linke Block enthält die Stellen 2 bis 7, der rechte Block die Stellen 8 bis 13 der EAN. Die erste Stelle wird durch ein besonderes Verfahren im linken Block versteckt.
Je zwei Schmale, nach unten etwas längere Striche dienen links und rechts als Randzeichen sowie als Trennzeichen in der Mitte.
Zum Codieren jeder Ziffer werden drei verschiedene Codetabellen verwendet. Für die rechte Hälfte der EAN wird ausschließlich der Code C verwendet.
Bei der linken Hälfte geht es nicht ganz so einfach, denn dort wird die erste EAN-Ziffer wie folgt eingearbeitet: In Abhängigkeit von der ersten Ziffer der EAN wird in linken Block (Ziffer 2 bis 7) nach einem bestimmten Muster zwischen den beiden Codes A und B gewechselt. Die Streifencodes von A und B sind voneinander verschieden - deshalb lässt sich umgekehrt aus den Streifen auch das verwendete Codemuster und damit nach die erste Ziffer der EAN ermitteln.
Diese umständliche Codierung der ersten Ziffer war erforderlich, damit EAN-Strichcode-Leser auch die in der USA verwendeten UPC-Strichcodes verarbeiten können: Diese erste Ziffer ist nämlich dem UPC-System hinzugefügt worden. Die nur 12stelligen UPC-Nummern verwenden in der linken Hälfte ausschließlich den Code A und erhalten daher im EAN-System automatisch als (zusätzliche) erste Ziffer die Null.
Der Übersicht entnehmen wir leicht:
- Jede Ziffer wird durch sieben Dualziffern so kodiert, dass zwei dunkle und zwei helle Streifen unterschiedliche Breite entstehen.
- Der Code A ergibt sich aus Code C, indem man die jeweilige Stelle negiert.
- Der Code B entsteht aus Code C, indem man die Reihenfolge von Schwarz und Weiß genau umkehrt.
- Dabei beginnen Code A und Code B mit einem hellen Streifen und enden mit einem dunklen Streifen, bei Code C ist es genau umgekehrt.
Die Codes sind bewußt so gewählt, daß der Computer auch erkennen kann, ob die Streifen mit dem Lesegerät von rechts nach links oder umgekehrt gelesen werden - unterschiedliche Leserichtungen können also nicht zu Verwechslungen führen!