Barcode Code 128 A, B, C

Code 128 Beispiel Barcode

Code 128 wurde Anfang der 80er Jahre durch Computer Identics entwickelt. Der Code ist wegen seiner Vorteile (hohe Lesesicherheit, geringe Codegröße, großer Zeichenvorrat) sehr weit verbreitet, z.B. in der Lagerhaltung, Warenwirtschaft oder im Transportwesen (z.B. bei UPS). Unter der Bezeichnung Code 128 EAN/UCC/GS1 wurde eine Sonderversion des Codes für den Handel definiert, die die Kodierung von strukturierten Daten (Artikelnummern usw.) innerhalb eines Codesymbols regelt. Bitte hierzu unsere Ausführungen zum GS1 128 beachten.

Code 128 Zeichensätze und Aufbau

Für den Code 128 wurden drei verschiedene Zeichensätze definiert (genannt A, B, C), die festlegen, wie der Barcodescanner die gelesenen Daten interpretiert. Die Zeichensätze unterscheiden sich im Zeichenvorrat und damit in der mit gegebenen Nutzdaten erreichbaren Komprimierung.

Code 128 A: Teilweiser ASCII Satz, keine Kleinbuchstaben aber ASCII Steuerzeichen (TAB, CR/LF usw.)
Code 128 B: Kompletter ASCII Satz, keine Steuerzeichen
Code 128 C: Ziffern 0-9, paarweise verschlüsselt, sehr kompakter Code

Das Startzeichen eines Codesymbols gibt an, welcher Zeichensatz verwendet wurde. Ebenso sind eine Reihe von Umschaltzeichen definiert, mit denen innerhalb eines Symbols von einem Satz in einen anderen geschaltet werden kann. Im allgemeinen erledigt die verwendete Barcode Software die entsprechende Aufbereitung der Daten.

Akzente, diakritische Zeichen und Umlaute mit Code 128

Prinzipiell ist die Kodierung von nicht-ASCII Zeichen (Umlaute usw.) durch Verwendung eines Sonderzeichens (FNC4) möglich, dieses Verfahren wird jedoch selten angewendet und von den meisten Barcodescannern nicht unterstützt. Ein 2D Barcode mit dedizierter Unterstützung für derartige Daten wie QR oder Datamatrix wäre hier vermutlich die bessere Wahl.

Prüfziffer für Code 128

Code 128 verwendet ein Modulo 103 Prüfziffernverfahren. Alle Zeichen eines Symbols werden gewichtet aufsummiert und ganzzahlig durch 103 dividiert. Auch Startzeichen und etwaige Umschaltzeichen gehen in die Berechnung ein. Der Restwert der Division ist die Prüfziffer. Für eine Beispielrechnung siehe den Wikipedia Artikel über Code 128 (engl.). Jedes Zeichen des Code 128 Zeichenvorrats kann Prüfziffer sein, auch nicht-druckbare Zeichen. Es ist daher bei Code 128 nicht üblich, die Prüfziffer zusammen mit den Nutzdaten unter den Code zu schreiben.

Die zur Generierung des Codes verwendete Barcode Software nimmt die Prüfziffernberechnung normalerweise automatisch vor.

Code 128 maximale Länge

Code 128 hat keine feste Länge (anders als zum Beispiel EAN 13) und kann im Prinzip beliebig viele Daten kodieren. Die praktische Grenze liegt bei 30 Zeichen (Groß- und Kleinbuchstaben) oder maximal 60 Ziffern bei einem rein numerischen Code.

Code 128 B mit 30 Buchstaben, Modulbreite 0.3mm, Gesamtlänge ca. 135mm (anklicken für Originalgröße):

Code 128 Maximale Länge Buchstaben

Code 128 C mit 60 Ziffern, Modulbreite 0.3mm, Gesamtlänge ca. 135mm (anklicken für Originalgröße):

Code 128 Maximale Länge Ziffern

Viele Barcodescanner oder "Reader"-Apps haben Limits, die unter diesen Werten liegen; hier kommt es auf den Einzelfall an. Generell gilt, daß ein Code, der über das Lesefenster eines Scanners herausragt, nicht gelesen werden kann.

Auch eine Untergrenze gibt es übrigens: Viele Barcodescanner auf dem Markt sind so konfiguriert, daß eine Mindestlänge von 4 Zeichen erwartet wird; Codes mit weniger Inhalt werden dann nicht gelesen.

Code 128 Scannen, Probleme mit Barcodefonts

Code 128 kann von allen gängigen CCD bzw. Laserscannern gelesen werden. Übliche Probleme beim Lesen sind: Mangelhafte Druckqualität oder zu geringe Codegröße, fehlende Start- / Stop-Zeichen, keine Prüfziffer und ähnliches. Bei der Verwendung von Barcodefonts oder Barcodeschriftarten für Code 128 kommt es ebenfalls oft zu Problemen; in Office Anwendungen wie Google Sheets, Word oder Excel ist es nicht ausreichend, einfach nur die Nutzdaten zu markieren und den Font zu ändern. Bitte hierzu unsere Ausführungen zum Scannen von Code 128 beachten.

Für Handys, Tabletts und andere Mobilgeräte stehen entsprechende Scanner-Apps zur Verfügung. Im Screenshot unten die CoScan App, ein PDF Dokumenten- und Barcodescanner für Apple iPhones, mit der alle gängigen linearen und 2D Barcodes gescannt werden können. Der Barcode wird im Livebild der Kamera erkannt und entschlüsselt; die kodierten Daten können dann zum Beispiel über die Zwischenablage in Excel, Word, Notes usw. eingefügt werden:

CoScan iPhone Scanner App Barcode

AppStore (kostenloser Download)

Musterbarcode Code 128 A, 128 B, 128 C

Rein numerische Nutzdaten, resultierend in einem Code 128 C Symbol:

Code 128 C

Gemischte Daten, resultierend in einem Code 128 B full-ASCII Symbol (beachte den Unterschied in den ersten drei Strichen, dem Startsymbol). Obwohl weniger Daten kodiert werden, ist der Code außerdem breiter als der vorhergehende.

Code 128 B

Gemischte Daten ("ABC<TAB>DEF>") ergeben ein Symbol, das als Code 128 B beginnt zur Kodierung von "ABC", dann umschaltet auf Code 128 A zur Kodierung des <TAB>, dann zurück auf 128 B für "DEF":

Code 128 A

Beim Scannen des Codes wird der Barcodescanner zunächst "ABC" übertragen, dann das <TAB>, schließlich "DEF". Das kann sehr nützlich sein, wenn in einer Eingabemaske oder Tabellenkalkulation (Excel usw.) mittels des <TAB> von einem Eingabefeld zum nächsten gesprungen wird. Der erste Teil, "ABC", wird ins erste Feld geschrieben, der zweite Teil, "DEF", ins nächste.

Nicht-druckbare Zeichen (wie das <TAB> im obigen Beispiel) werden in unseren Apps mittels "Tilde"-Notation vorgenommen. Sie geben die Tilde ein, gefolgt vom dreistelligen ASCII Code des Symbols. Um also beispielsweise ein <TAB> zu kodieren, geben Sie ein "~009".

Vorgabe des Code 128 Subtyps

Gelegentlich erhalten wir Anfragen zur Codeerstellung mit der Auflage, "es muß aber Code 128B sein". Unsere Software verwendet stets den Code 128 Subtyp, der für die kodierten Daten optimal ist: Wenn also gemischte alphanumerische Daten kodiert werden, 128B, bei rein numerischen Daten 128C usw. Das ist in der Spezifikation des Codes so beschrieben und wird bei allen uns bekannten Programmen auch so gemacht, ebenso wie das Umschalten von einem Typ zum anderen innerhalb eines Symbols wie oben erläutert. Es gibt auch keine handelsüblichen Barcodescanner, die z.B. ausschließlich Code 128B lesen können. Insofern ist die Vorgabe eines konkreten Code 128 Subtyps nicht praxisgerecht.

Code 128 in Adobe Illustrator & InDesign erstellen

Einfach zu verwendende Barcode Plugins für Adobe Indesign, Illustrator und Photoshop. Normgerechte Barcodes auf Knopfdruck ohne externe Abhängigkeiten, ohne Programmieren, ohne spezielle Fonts.

Die Softmatic Barcode Plug-Ins und Extensions für InDesign, Illustrator und Photoshop gibt es im Softmatic Store.

Code 128 in Excel generieren

Einfachste Barcodeerstellung in Excel 365 mit unserem Barcode AddIn und Barcode Schriftarten. Das AddIn unterstützt Code 128 und Code 128 GS1 mit automatischer Prüfziffernberechnung.

Dedizierte Code 128 Barcode Software

Zur Erstellung von Code 128 bieten wir verschiedene Programme an:

Softmatic BarcodePlus V5

Die App erzeugt nicht nur Code 128 sondern auch alle gängigen Handelsstrichcodes (EAN, UPC, ISBN) und eine große Auswahl von linearen und 2D Barcodes (QR, Aztec Datamatrix usw.).



  • Mac: Download (macOS 10.15 oder höher, pre 10.15: hier)
  • Windows: Download (Windows 10 oder höher)

Softmatic BarcodeFactory

Mit Softmatic BarcodeFactory erstellen Sie Barcodevorlagen in großen Mengen. Alle Code 128 Varianten werden unterstützt, auch 128 GS1. Die Software kann selbsttätig laufende Seriennummern generieren und daraus Barcodes erzeugen. Ebenso können Nutzdaten über die Zwischenablage oder aus TXT oder CSV Dateien importiert werden (Excel, mySQL usw.).

Beispielanwendung: Code 128 mit laufenden Nummern:

Als Besonderheit können zusätzliche Daten über und unter dem Barcode angebracht werden: Preis, Produktbezeichnung, Mindesthaltbarkeitsdatum, Gewicht usw.

  • Mac: Download (macOS 10.15 oder höher, pre 10.15: hier)
  • Windows: Download (Windows 10 oder höher)