Code-128 Barcode Generator
Beliebigen druckbaren Text eingeben und einen scannbaren Code-128-Strichcode erhalten. Das ist das Format der Wahl, wenn der Barcode für die eigene Anwendung gedacht ist und nicht für die Ladenkasse.
Code 128-Barcode erzeugen
SVG-Formmaske (dekorativ)
Laden Sie eine SVG-Datei hoch — der Barcode wird auf deren Umriss beschnitten. Ein Pferd als SVG ergibt einen pferdeförmigen Barcode.
Code 128 ist der Allzweck-Strichcode. Er deckt den kompletten ASCII-Zeichensatz ab – Groß- und Kleinbuchstaben, Ziffern, Satzzeichen und Steuerzeichen – und genau deshalb steckt er auf nahezu jedem Versandetikett, jeder Lagerplatzkarte und jedem Inventaraufkleber. Anders als bei EAN oder UPC vergibt niemand Code-128-Nummern: Sie legen selbst fest, was im Symbol steht.
Seine Dichte verdankt Code 128 drei austauschbaren Zeichensätzen. Zeichensatz A (Code 128A) enthält Großbuchstaben und Steuerzeichen, Zeichensatz B (Code 128B) zusätzlich Kleinbuchstaben und Satzzeichen, Zeichensatz C (Code 128C) packt zwei Ziffern in ein einziges Symbolzeichen. Ein guter Encoder wechselt mitten im Symbol zwischen ihnen, sodass eine lange Ziffernfolge nur etwa halb so breit wird wie in jedem anderen linearen Format. bwip-js, das die Vorschau oben rendert, übernimmt diese Wahl automatisch.
In der Logistik begegnet Ihnen die Variante GS1-128, früher UCC/EAN-128: dieselbe Symbologie mit vorangestelltem FNC1-Zeichen und GS1-Datenbezeichnern, die den Inhalt strukturieren – so erkennt der Scanner, was Chargennummer und was Mindesthaltbarkeitsdatum ist. Wenn ein Spediteur eine NVE-/SSCC-Etikettenspezifikation schickt, ist genau das gemeint.
Was Code 128 kodiert
| Zeichensatz | Alle 128 ASCII-Zeichen über die Zeichensätze A, B und C |
|---|---|
| Länge | Variabel – die Norm setzt keine Grenze, praktisch begrenzt die Etikettenbreite |
| Prüfziffer | Modulo 103, wird automatisch berechnet und nicht in der Klarschriftzeile gedruckt |
| Dimension | Linear (1D) |
| Ruhezone | 10 × Breite des schmalsten Strichs auf jeder Seite |
| Norm | ISO/IEC 15417 |
Code-128-Zeichentabelle: Zeichensätze A, B und C
Jedes Code-128-Symbolzeichen hat einen Wert von 0 bis 106 und besteht aus drei Strichen und drei Lücken mit zusammen elf Modulen Breite; nur das Stoppmuster hat einen vierten Strich und ist dreizehn Module breit. Was ein Wert bedeutet, hängt vom gerade gültigen Zeichensatz ab. Das Startzeichen – Start A, Start B oder Start C – legt den ersten Satz fest, die Zeichen Code A, Code B und Code C wechseln mitten im Symbol, und Shift schaltet nur für das nächste Zeichen zwischen A und B um.
Code 128A umfasst Großbuchstaben, Ziffern, Satzzeichen und die ASCII-Steuerzeichen NUL bis US. Code 128B umfasst den druckbaren Bereich vom Leerzeichen bis zur Tilde einschließlich Kleinbuchstaben; hier beginnen die meisten Texte. Code 128C kodiert die Paare 00 bis 99 als je ein Zeichen, weshalb eine lange Zahl mit gerader Stellenzahl nur halb so breit wird. FNC1 direkt nach dem Startzeichen kennzeichnet ein GS1-128-Symbol; FNC2, FNC3 und FNC4 dienen dem Verketten von Nachrichten, der Scannerprogrammierung und erweitertem ASCII und werden selten gebraucht.
Das Prüfzeichen ist der Startwert plus jeder Datenwert mal seiner Position, modulo 103. Weder die Berechnung noch die Wahl des Zeichensatzes müssen Sie selbst übernehmen, das erledigt dieser Generator. Die Tabelle dient zum Lesen eines Symbols von Hand, zum Prüfen eines anderen Encoders oder zum Bau einer Schrift.
| Wert | Code A | Code B | Code C | Breiten |
|---|---|---|---|---|
| 0 | SP | SP | 00 | 212222 |
| 1 | ! | ! | 01 | 222122 |
| 2 | " | " | 02 | 222221 |
| 3 | # | # | 03 | 121223 |
| 4 | $ | $ | 04 | 121322 |
| 5 | % | % | 05 | 131222 |
| 6 | & | & | 06 | 122213 |
| 7 | ' | ' | 07 | 122312 |
| 8 | ( | ( | 08 | 132212 |
| 9 | ) | ) | 09 | 221213 |
| 10 | * | * | 10 | 221312 |
| 11 | + | + | 11 | 231212 |
| 12 | , | , | 12 | 112232 |
| 13 | - | - | 13 | 122132 |
| 14 | . | . | 14 | 122231 |
| 15 | / | / | 15 | 113222 |
| 16 | 0 | 0 | 16 | 123122 |
| 17 | 1 | 1 | 17 | 123221 |
| 18 | 2 | 2 | 18 | 223211 |
| 19 | 3 | 3 | 19 | 221132 |
| 20 | 4 | 4 | 20 | 221231 |
| 21 | 5 | 5 | 21 | 213212 |
| 22 | 6 | 6 | 22 | 223112 |
| 23 | 7 | 7 | 23 | 312131 |
| 24 | 8 | 8 | 24 | 311222 |
| 25 | 9 | 9 | 25 | 321122 |
| 26 | : | : | 26 | 321221 |
| 27 | ; | ; | 27 | 312212 |
| 28 | < | < | 28 | 322112 |
| 29 | = | = | 29 | 322211 |
| 30 | > | > | 30 | 212123 |
| 31 | ? | ? | 31 | 212321 |
| 32 | @ | @ | 32 | 232121 |
| 33 | A | A | 33 | 111323 |
| 34 | B | B | 34 | 131123 |
| 35 | C | C | 35 | 131321 |
| 36 | D | D | 36 | 112313 |
| 37 | E | E | 37 | 132113 |
| 38 | F | F | 38 | 132311 |
| 39 | G | G | 39 | 211313 |
| 40 | H | H | 40 | 231113 |
| 41 | I | I | 41 | 231311 |
| 42 | J | J | 42 | 112133 |
| 43 | K | K | 43 | 112331 |
| 44 | L | L | 44 | 132131 |
| 45 | M | M | 45 | 113123 |
| 46 | N | N | 46 | 113321 |
| 47 | O | O | 47 | 133121 |
| 48 | P | P | 48 | 313121 |
| 49 | Q | Q | 49 | 211331 |
| 50 | R | R | 50 | 231131 |
| 51 | S | S | 51 | 213113 |
| 52 | T | T | 52 | 213311 |
| 53 | U | U | 53 | 213131 |
| 54 | V | V | 54 | 311123 |
| 55 | W | W | 55 | 311321 |
| 56 | X | X | 56 | 331121 |
| 57 | Y | Y | 57 | 312113 |
| 58 | Z | Z | 58 | 312311 |
| 59 | [ | [ | 59 | 332111 |
| 60 | \ | \ | 60 | 314111 |
| 61 | ] | ] | 61 | 221411 |
| 62 | ^ | ^ | 62 | 431111 |
| 63 | _ | _ | 63 | 111224 |
| 64 | NUL | ` | 64 | 111422 |
| 65 | SOH | a | 65 | 121124 |
| 66 | STX | b | 66 | 121421 |
| 67 | ETX | c | 67 | 141122 |
| 68 | EOT | d | 68 | 141221 |
| 69 | ENQ | e | 69 | 112214 |
| 70 | ACK | f | 70 | 112412 |
| 71 | BEL | g | 71 | 122114 |
| 72 | BS | h | 72 | 122411 |
| 73 | HT | i | 73 | 142112 |
| 74 | LF | j | 74 | 142211 |
| 75 | VT | k | 75 | 241211 |
| 76 | FF | l | 76 | 221114 |
| 77 | CR | m | 77 | 413111 |
| 78 | SO | n | 78 | 241112 |
| 79 | SI | o | 79 | 134111 |
| 80 | DLE | p | 80 | 111242 |
| 81 | DC1 | q | 81 | 121142 |
| 82 | DC2 | r | 82 | 121241 |
| 83 | DC3 | s | 83 | 114212 |
| 84 | DC4 | t | 84 | 124112 |
| 85 | NAK | u | 85 | 124211 |
| 86 | SYN | v | 86 | 411212 |
| 87 | ETB | w | 87 | 421112 |
| 88 | CAN | x | 88 | 421211 |
| 89 | EM | y | 89 | 212141 |
| 90 | SUB | z | 90 | 214121 |
| 91 | ESC | { | 91 | 412121 |
| 92 | FS | | | 92 | 111143 |
| 93 | GS | } | 93 | 111341 |
| 94 | RS | ~ | 94 | 131141 |
| 95 | US | DEL | 95 | 114113 |
| 96 | FNC3 | FNC3 | 96 | 114311 |
| 97 | FNC2 | FNC2 | 97 | 411113 |
| 98 | Shift B | Shift A | 98 | 411311 |
| 99 | Code C | Code C | 99 | 113141 |
| 100 | Code B | FNC4 | Code B | 114131 |
| 101 | FNC4 | Code A | Code A | 311141 |
| 102 | FNC1 | FNC1 | FNC1 | 411131 |
| 103 | Start A | Start A | Start A | 211412 |
| 104 | Start B | Start B | Start B | 211214 |
| 105 | Start C | Start C | Start C | 211232 |
| 106 | Stop | Stop | Stop | 2331112 |
Wo Code 128 tatsächlich eingesetzt wird
Paket- und Palettenetiketten
Frachtführer-Labels, NVE bzw. SSCC und GS1-128-Datenblöcke basieren alle auf Code 128.
Lager und Bestandsführung
Lagerplätze, Kommissionierlisten und Warenbewegungen – überall dort, wo Drucker und Scanner in Ihrer Hand liegen.
Inventarkennzeichnung
IT-Hardware, Werkzeuge und Laborgeräte, meist mit alphanumerischer Inventarnummer.
Gesundheitswesen
Patientenarmbänder, Probenetiketten und Medikamentenwagen, häufig als GS1-128 mit strukturierten Datenbezeichnern.
Regeln, die dieser Code 128-Generator prüft
- Zuverlässig übertragen wird nur druckbares ASCII. Umlaute, ß und alles außerhalb von ASCII werden entweder abgelehnt oder kommen beim Scannen als Zeichensalat zurück.
- Die Prüfziffer berechnet der Generator. Hängen Sie keine eigene an.
- Leerzeichen sind erlaubt, gehen beim manuellen Abtippen aber leicht verloren – Bindestriche oder Unterstriche sind die sicherere Trennung.
- Lange Werte ergeben sehr breite Symbole. Ab etwa 20 Zeichen bringt Data Matrix oder PDF417 dieselben Daten auf deutlich weniger Fläche unter.
Code 128 so drucken, dass er gelesen wird
Code 128 wird über das Verhältnis von breiten zu schmalen Strichen gelesen. Alles, was die Striche ungleichmäßig verdickt oder verdünnt, zerstört ihn. Drucken Sie schwarz auf weiß, exportieren Sie SVG, wenn das Etikett in die Druckerei geht, und ziehen Sie das Symbol im Layout niemals in die Breite.
Lassen Sie die Ruhezone stehen. Zehn Modulbreiten leerer Rand auf jeder Seite gehören zur Symbologie, und ihr Wegschneiden ist die häufigste Ursache dafür, dass ein technisch korrektes Etikett nicht gelesen wird.
Fragen zu Code 128
Muss ich eine Code-128-Nummer irgendwo registrieren lassen?
Nein. Code 128 transportiert genau den Text, den Sie eingeben. Eine Registrierung betrifft nur Handelsartikelnummern – EAN-13 und UPC-A –, die von GS1 vergeben werden.
Worin unterscheiden sich Code 128 und GS1-128?
GS1-128 ist Code 128 mit zusätzlichen Regeln: ein FNC1-Zeichen am Anfang und GS1-Datenbezeichner, die jedes Feld benennen. Die Striche sind identisch, nur die vereinbarte Bedeutung der Daten unterscheidet sich.
Wie lang darf ein Code-128-Barcode sein?
Die Symbologie kennt keine Obergrenze, aber jedes Zeichen fügt rund 11 Module Breite hinzu. Ein Wert mit 30 Zeichen ist auf einem üblichen Thermodrucker bereits breiter als ein 100-mm-Etikett.
Worin unterscheiden sich Code 128A, 128B und 128C?
Es sind die drei Zeichensätze derselben Symbologie, keine getrennten Barcodes. A ergänzt Großbuchstaben um Steuerzeichen, B umfasst druckbares ASCII einschließlich Kleinbuchstaben, C packt die Ziffernpaare 00–99 in je ein Zeichen. Ein Symbol kann zwischen ihnen wechseln, und der Scanner liefert denselben Text, egal welcher Satz verwendet wurde.
Kann ich Code 128B oder Code 128C erzwingen?
In diesem Generator nicht, und es gibt selten einen Grund dafür. Der Encoder wählt Startzeichensatz und Wechsel selbst. Zeichensatz C kodiert nur Ziffernpaare, deshalb wird bei einer ungeraden Ziffernzahl immer eine Ziffer in Satz A oder B kodiert.
Erzeugt dieser Generator GS1-128 (EAN-128)?
Nein. Er zeichnet reinen Code 128 und setzt kein FNC1-Zeichen, das ein GS1-128-Symbol kennzeichnet. Datenbezeichner in Klammern ergeben deshalb kein gültiges GS1-128-Etikett. Für NVE-/SSCC-Etiketten sowie Charge und Mindesthaltbarkeit nehmen Sie eine GS1-fähige Etikettensoftware.