Code 39
Die Kodierung Code 39, auch kurz 3 of 9 (drei aus neun) genannt, ist eine diskrete Barcode-Symbologie mit variabler Länge. Sie stellt einen alphanumerischen Zeichensatz zur Verfügung. Außer Ziffern und Großbuchstaben sind sieben Sonderzeichen definiert. Start- und Stoppzeichen sind identisch und werden durch das Sonderzeichen „*“ dargestellt. Der Code 39 wurde 1973 von Intermec (USA) entwickelt und ist in der ISO/IEC 16388[1] spezifiziert.
Aufbau
Jedem Zeichen des verfügbaren Alphabets wird ein Barcode aus fünf Strichen und vier Zwischenräumen zugeordnet, ein Zeichen besteht also aus 5 schwarzen und 4 weißen Balken. Es gibt zwei verschiedene Balken- und Lückenbreiten, wobei immer drei Balken breit und alle anderen schmal sind. Die Bezeichnung Code 39 oder „3 of 9“ geht auf diese Struktur der Kodierung zurück. Dieser Aufbau ermöglicht die Darstellung von 44 verschiedenen Zeichen, davon 40 mit zwei breiten schwarzen und einem breiten weißen Balken. 39 dieser 40 Möglichkeiten entsprechen den Ziffern 0–9, dem Alphabet (A–Z), dem Punkt, dem Minuszeichen (bzw. Bindestrich) und dem Leerzeichen. Die 40. Möglichkeit codiert das Start-/Stoppzeichen „*“. Die letzten 4 Zeichen (Prüfsummenwert 39–42) werden mit drei breiten weißen Balken dargestellt.
Code 39 ist ein diskreter Code mit variabler Codelänge (variable Zeichenanzahl). Der Codeaufbau erlaubt die bidirektionale Abtastung der selbstüberprüfenden Elemente[2].
Für Anwendungen mit erhöhten Anforderungen an die Lesesicherheit existiert ein optionales Prüfsummenverfahren, das auf einer Wertetabelle für jedes Zeichen beruht. Hierbei besitzt das Zeichen „0“ den numerischen Wert 0, das Zeichen „1“ den Wert 1, das Zeichen „A“ den Wert 10, das Zeichen „Z“ den Wert 35. Als letztem Zeichen wird „%“ der Wert 42 zugeordnet. Der Wert des Prüfzeichens errechnet sich demnach wie folgt:
So ist zum Beispiel „T“ das Prüfzeichen der Zeichenfolge „12345ABCDE/“. Durch folgende Berechnung kommt das „T“ zustande:
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle 1 + 2 + 3 + 4 + 5 + 10 + 11 + 12 + 13 + 14 + 40 = 115}
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle 115 \bmod 43 = 29}
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle 29 \Rightarrow T} [3]
Der Code 39 ist einfach herzustellen[4], da ein Zeichen Klarschrift einem Zeichen Barcode entspricht. Code 39 dominierte frühere Anwendungsgebiete, die eine alphanumerische Kodierung verlangten. Wegen der relativ geringen Informationsdichte und einer im Vergleich zu anderen Kodierungen geringen Zeichensatzauswahl wird er in jüngster Zeit jedoch zunehmend durch den Code128 ersetzt. Allerdings ist er durch die Beschränkung auf zwei deutlich unterscheidbare Breiten auch bei schlechter Druckqualität zuverlässig lesbar; nötigenfalls sogar mit bloßem Auge.
Zeichenkodierung
Zeichen | Code | Bedeutung | Wert für Prüfsumme |
---|---|---|---|
‚1‘ | ▮| ||▮ | 1 | 1 |
‚2‘ | |▮ ||▮ | 2 | 2 |
‚3‘ | ▮▮ ||| | 3 | 3 |
‚4‘ | || ▮|▮ | 4 | 4 |
‚5‘ | ▮| ▮|| | 5 | 5 |
‚6‘ | |▮ ▮|| | 6 | 6 |
‚7‘ | || |▮▮ | 7 | 7 |
‚8‘ | ▮| |▮| | 8 | 8 |
‚9‘ | |▮ |▮| | 9 | 9 |
‚0‘ | || ▮▮| | 0 | 0 |
‚A‘ | ▮|| |▮ | A | 10 |
‚B‘ | |▮| |▮ | B | 11 |
‚C‘ | ▮▮| || | C | 12 |
‚D‘ | ||▮ |▮ | D | 13 |
‚E‘ | ▮|▮ || | E | 14 |
‚F‘ | |▮▮ || | F | 15 |
‚G‘ | ||| ▮▮ | G | 16 |
‚H‘ | ▮|| ▮| | H | 17 |
‚I‘ | |▮| ▮| | I | 18 |
‚J‘ | ||▮ ▮| | J | 19 |
‚K‘ | ▮||| ▮ | K | 20 |
‚L‘ | |▮|| ▮ | L | 21 |
‚M‘ | ▮▮|| | | M | 22 |
‚N‘ | ||▮| ▮ | N | 23 |
‚O‘ | ▮|▮| | | O | 24 |
‚P‘ | |▮▮| | | P | 25 |
‚Q‘ | |||▮ ▮ | Q | 26 |
‚R‘ | ▮||▮ | | R | 27 |
‚S‘ | |▮|▮ | | S | 28 |
‚T‘ | ||▮▮ | | T | 29 |
‚U‘ | ▮ |||▮ | U | 30 |
‚V‘ | | ▮||▮ | V | 31 |
‚W‘ | ▮ ▮||| | W | 32 |
‚X‘ | | |▮|▮ | X | 33 |
‚Y‘ | ▮ |▮|| | Y | 34 |
‚Z‘ | | ▮▮|| | Z | 35 |
‚-‘ | | ||▮▮ | Bindestrich, Minus | 36 |
‚.‘ | ▮ ||▮| | Punkt | 37 |
‚ ‘ | | ▮|▮| | Space, Leerzeichen | 38 |
‚*‘ | | |▮▮| | Start, Stopp | |
‚$‘ | | | | || | Dollar | 39 |
‚/‘ | | | || | | Schrägstrich | 40 |
‚+‘ | | || | | | Plus | 41 |
‚%‘ | || | | | | Prozent | 42[5] |
Full ASCII Code 39
Code 39 ist auf 43 Zeichen beschränkt. Um alle 128 ASCII-Zeichen darstellen zu können, wird das System so erweitert: Die Symbole 0–9, A–Z, „.“ und „-“ sind die gleichen wie bei Code 39. Kleinbuchstaben, weitere Zeichen und Steuerungszeichen werden durch zwei aufeinanderfolgende Symbole von Code 39 gebildet.
|
|
|
|
Code 39 reduced
Ist eine Variante, die nur aus den Zeichen 0 bis 9 und A bis Z besteht und das Prüfzeichen wird modulo 36 berechnet.
Unterstützung
Als altbewährte Symbolik wird Code 39 von fast allen gängigen Strichcodelesern und Etikettendruckern unterstützt. Für Textverarbeitungs-Software wird Code 39 als Schriftart von verschiedenen Anbietern (auch kostenfrei) angeboten, und für LaTeX empfiehlt sich das barcodes-Paket.
Weblinks
- Kostenloser Code 39 Schriftfont und Excel-Makro für Warenanhänger der Automobilzulieferer
- Downloadmöglichkeit des Code 39 als TrueType Font
- EAN MediaWiki extension, eine MediaWiki-Extension, die Code 39/Codabar/UPC/EAN-13/EAN-8 Barcodes nur durch die Angabe der Barcode-Nummer/-Symbole visuell darstellt.
- ISO/IEC 16388: Information technology — Automatic identification and data capture techniques — Code 39 bar code symbology specification
- Barcode-Lexikon Code 39
Einzelnachweise
- ↑ ISO/IEC 16388:2007 Information technology -- Automatic identification and data capture techniques -- Code 39 bar code symbology specification International Organization for Standardization, abgerufen am 10. März 2014
- ↑ Strichcodesysteme Code 39 (Memento vom 31. März 2015 im Internet Archive). Strichcodeservice Michael Franken. Abgerufen am 10. März 2014.
- ↑ Strichcodesysteme Code 39 – Prüfzeichenberechnung (Beschreibung) (Memento vom 31. März 2015 im Internet Archive). Strichcodeservice Michael Franken. Abgerufen am 10. März 2014. – mit ähnlicher Berechnung
- ↑ Barcode Lexikon Code 39 – Vorteile / Stärken. Suchy MIPS. Abgerufen am 10. März 2014.
- ↑ Strichcodesysteme Code 39 – Prüfzeichenberechnung (Beschreibung) (Memento vom 31. März 2015 im Internet Archive). Strichcodeservice Michael Franken. Abgerufen am 10. März 2014. - Tabelle listet die Sonderzeichen auf