Code-39-Barcode-Generator
Erstellen Sie Code 39 Barcodes für die industrielle Kennzeichnung, Fertigung, Bestandsverwaltung und Anlagenverfolgung.
Barcode- & Matrix-Generator
Live-Studio-Vorschau
Code 128 Seriennummern-Generator für Chargen
Erstellen Sie fortlaufende Code-128-Barcodes für Lager-SKUs, Inventarschilder, Bestandsetiketten und andere interne Kennungen.
Code-39-Barcode-Generator
Kurzantwort: Code 39 ist ein selbstprüfender, linearer Barcode mit variabler Länge, der in der Norm ISO/IEC 16388:2023 definiert ist. Er ist auch unter den Bezeichnungen „Code 3 of 9“ und „Alpha39“ bekannt. Die Symbologie kodiert 43 Zeichen: Großbuchstaben A–Z, Ziffern 0–9 sowie die sieben Sonderzeichen Leerzeichen, Bindestrich, Punkt, Dollarzeichen, Schrägstrich, Pluszeichen und Prozentzeichen. Eine Prüfziffer ist optional.
What a Code 39 barcode is
Code 39 is a one-dimensional, discrete, self-checking barcode symbology defined in ISO/IEC 16388:2023 (third edition). It is also known as Code 3 of 9 and Alpha39. The name "3 of 9" refers to its structure: each character is represented by 9 elements — 5 bars and 4 spaces — of which exactly 3 are wide.
Das Sternchen (*) dient sowohl als Start- als auch als Stoppzeichen. Es wird nicht als Daten übertragen – Decoder entfernen es –, muss aber in jedem gültigen Code-39-Symbol enthalten sein. Aufgrund dieses Designs kann das Sternchen selbst nicht als Datenzeichen verwendet werden.
Code 39 verfügt über eine integrierte Prüffunktion. Die Elementstruktur „3 von 9“ bedeutet, dass ein einzelner Druckfehler, durch den ein Element so stark verbreitert oder verengt wird, dass es der falschen Kategorie (schmal oder breit) zugeordnet wird, ein Zeichen mit einer falschen Anzahl breiter Elemente erzeugt. Der Decoder erkennt dieses Zeichen als ungültig. Diese integrierte Prüffunktion war der praktische Grund dafür, dass Code 39 jahrzehntelang in vielen Einsatzbereichen ohne verpflichtende Prüfziffer verwendet wurde.
Technische Spezifikation von Code 39
Character set and structure
| Parameter | Wert | Quelle |
|---|---|---|
| Vollständiger Name | Code 39 (also Code 3 of 9, Alpha39) | ISO/IEC 16388:2023 |
| ISO/IEC standard | ISO/IEC 16388:2023 (third edition) | iso.org/standard/77799.html |
| Code type | Discrete (intercharacter gaps between characters) | ISO/IEC 16388:2023 §4.1(b) |
| Native character set | 43 characters: A–Z (26), 0–9 (10), space, -, ., $, /, +, % (7) | ISO/IEC 16388:2023 §4.1(a) |
| Extended ASCII (Full ASCII Code 39) | All 128 ASCII characters via two-character shift sequences using $, /, +, % | ISO/IEC 16388:2023 §4.1(a) |
| Symbol length | Variabel | ISO/IEC 16388:2023 §4.1(e) |
| Elements per character | 9 (5 bars + 4 spaces): exactly 3 wide, 6 narrow | ISO/IEC 16388:2023 §4.1(c) |
| Start/stop character | Asterisk (*) — not transmitted by decoder | ISO/IEC 16388:2023 §4.3.3 |
| Self-checking | Ja | ISO/IEC 16388:2023 §4.1(d) |
| Wide-to-narrow ratio | 2.0:1 to 3.0:1 (nominal); 1.8:1 to 3.4:1 tolerance | ISO/IEC 16388:1999 §4.4(b); ISO/IEC 16388:2023 |
Check character
| Parameter | Wert | Quelle |
|---|---|---|
| Check character | Optional — modulo-43 | ISO/IEC 16388:2023 Annex A |
| Algorithm | Sum of all data character values (A=10, B=11, ... Z=35, 0=0, ... 9=9, special chars each assigned unique values 0–42); divide sum by 43; remainder maps to Code 39 character | ISO/IEC 16388:2023 Annex A |
| Transmitted | Yes — the check character is included in the symbol and may be transmitted | ISO/IEC 16388:2023 |
Print requirements
| Parameter | Wert | Quelle |
|---|---|---|
| Quiet zones | Minimum 10X on each side | ISO/IEC 16388:1999 §4.4(d) |
| Min bar height (manual scan) | 5.0 mm or 15% of symbol width excluding quiet zones, whichever is greater | ISO/IEC 16388:1999 §4.4(e) |
When to use a Code 39 barcode
LOGMARS des US-Verteidigungsministeriums (US Department of Defense). Der Standard des DoD für logistische Anwendungen der automatisierten Kennzeichnung und des Lesens von Symbolen (LOGMARS), der auf MIL-STD-1189B basiert, schreibt Code 39 zur Kennzeichnung von Teilen, Komponenten und Baugruppen in der US-amerikanischen Verteidigungszulieferkette vor. Wenn Sie als Rüstungsauftragnehmer verpflichtet sind, LOGMARS-konforme Etiketten anzubringen, ist Code 39 vorgeschrieben. Verwenden Sie in diesem Kontext genau Code 39.
Kennzeichnung von Automobilteilen und VIN-bezogene Etikettierung. Große Automobilhersteller und ihre Tier-1-Zulieferer verwenden seit Jahrzehnten Code 39 für Etiketten zur Teileidentifikation. AIAG-Standards und Spezifikationen für die Automobilfertigung verweisen in bestimmten Anwendungsbereichen weiterhin auf Code 39 zur internen Teileverfolgung, obwohl Code 128 inzwischen verfügbar ist.
Verfolgung von Krankenhausinventar und medizinischen Geräten (Altsysteme). Einige Systeme zur Verfolgung von Krankenhausinventar und medizinischen Geräten, die installiert wurden, bevor Code 128 zum vorherrschenden Standard wurde, verwenden Code-39-Scanner. Lässt sich das installierte System nicht neu konfigurieren, bleiben Code-39-Etiketten die einzige kompatible Option.
Anwendungen in Behörden und der Industrie, bei denen Einfachheit gefragt ist. Code 39 ist selbstprüfend und erfordert keine obligatorische Prüfziffer. Sein Verhältnis von breiten zu schmalen Elementen macht ihn unempfindlich gegenüber Ungenauigkeiten beim Punktmatrix- und Anschlagdruck, und praktisch jeder jemals verkaufte Barcode-Leser kann ihn decodieren. Diese Eigenschaften machten ihn zwei Jahrzehnte lang zum vorherrschenden Industrie-Barcode und machen ihn auch heute noch zu einer geeigneten Wahl in kontrollierten Umgebungen, in denen die installierte Basis weiterhin genutzt wird.
Wann Code 39 bei neuen Implementierungen NICHT verwendet werden sollte. Code 39 ist nicht die moderne Wahl. Sein Zeichensatz mit 43 Zeichen enthält keine Kleinbuchstaben. Aufgrund seiner diskreten Struktur – jedes Zeichen ist durch eine Lücke zwischen den Zeichen getrennt – ist er bei gleicher Datenmenge physisch länger als Code 128. Eine zehnstellige Ziffernfolge, die mit Code 128 Code Set C codiert wird, ist physisch ungefähr halb so lang wie dieselbe Folge in Code 39. Verwenden Sie Code 128 für jedes neue Lager-, Versand- oder Etikettensystem für allgemeine Zwecke.
Druckanforderungen für Code 39
X-Dimension. Verwenden Sie die größte X-Dimension, die der Platz auf Ihrem Etikett zulässt. Die diskrete Lücke zwischen den Zeichen verlängert Code 39 zusätzlich zu den Zeichenmodulen physisch, sodass das Symbol bereits länger ist als ein kontinuierlicher Barcode mit äquivalenten Daten. Eine größere X-Dimension verbessert die Scan-Zuverlässigkeit, insbesondere bei thermisch und im Impact-Druck bedruckten Materialien.
Wide-to-narrow ratio. ISO/IEC 16388:2023 specifies a nominal ratio of 2.0:1 to 3.0:1, with tolerance from 1.8:1 to 3.4:1. The ratio must be consistent throughout the symbol. A ratio below 1.8:1 makes wide and narrow elements ambiguous. A ratio above 3.4:1 produces needlessly long symbols.
Ruhezonen. Das Symbol muss links und rechts jeweils eine freie Zone von mindestens 10X aufweisen. Die Ruhezone ist Bestandteil des Standards und keine bloße Empfehlung. Jedes Element – etwa ein Rand, ein benachbarter Barcode oder Text – innerhalb der Ruhezone kann dazu führen, dass das Start- oder Stoppzeichen falsch erkannt wird.
Bar height. The minimum bar height is 5.0 mm or 15 percent of the symbol width excluding quiet zones, whichever is greater, per ISO/IEC 16388:1999 §4.4(e). Taller bars improve tolerance for scanner tilt and label curl.
Bedruckstoff. Dank der Toleranz beim Verhältnis von breiten zu schmalen Elementen ist Code 39 auf rauen Bedruckstoffen wie Wellpappe und groben Textilien fehlertoleranter als Codes mit einem geringeren Verhältnis. Das war früher einer der Gründe für den Einsatz in industriellen Umgebungen. Trotzdem liefert ein kontrastreicher Druck auf einem glatten Bedruckstoff die zuverlässigsten Ergebnisse.
Fehlerbehebung: Warum Ihr Code-39-Barcode nicht gescannt wird
Kleinbuchstabe in den Daten. Der native Zeichensatz von Code 39 umfasst nur Großbuchstaben. Für Kleinbuchstaben ist die Shift-Codierung von Full ASCII Code 39 erforderlich. Wenn der Generator die Eingabe akzeptiert, das Lesegerät sie aber nicht erkennt, prüfen Sie, ob das Lesegerät für Full ASCII Code 39 konfiguriert ist — Standard-Code-39-Decoder weisen die Shift-Sequenzen als ungültig zurück.
Sternchen in den Daten. Das Sternchen ist das Start- und Stoppzeichen für Code 39 und kann nicht als Datenzeichen verwendet werden. Jede Eingabe, die ein Sternchen enthält, erzeugt ein ungültiges Symbol.
Das Verhältnis zwischen breiten und schmalen Strichen wurde durch Skalierung verändert. Wenn das exportierte PNG-Bild mit einer Auflösung gedruckt wird, die die Pixelanzahl der Module verändert, kann das Verhältnis zwischen breiten und schmalen Strichen außerhalb der Toleranz von 1,8:1 bis 3,4:1 liegen. Drucken Sie das Bild in den vorgesehenen exakten Pixelabmessungen oder verwenden Sie den SVG-Export und skalieren Sie ihn beim Drucken gleichmäßig.
Ruhezone verletzt. Text, Ränder oder benachbarte Etiketten, die innerhalb von 10X an den Symbolenden platziert werden, können dazu führen, dass Start und Stopp nicht erkannt werden. Lassen Sie auf beiden Seiten die vollständige Ruhezone von 10X frei.
Prüfziffer stimmt nicht überein. Wenn die Systemkonfiguration eine Prüfziffer nach Modulo 43 voraussetzt und das Etikett ohne Prüfziffer gedruckt wurde, weist der Scanner scheinbar gültige Symbole zurück. Ist umgekehrt eine Prüfziffer enthalten und der Scanner so eingestellt, dass er sie nicht überprüft, erscheint das Prüfzeichen als zusätzliches Zeichen in der decodierten Ausgabe. Stimmen Sie die Prüfziffer-Einstellung von Generator und Scanner aufeinander ab.
Strichhöhe zu gering. Eine Strichhöhe von weniger als 5 mm oder weniger als 15 Prozent der Symbolbreite führt zu Scanfehlern, wenn der Laserstrahl beim manuellen Scannen über oder unter die Striche gerät. Drucken Sie den Barcode mit höheren Strichen erneut aus.
Code 39 versus Code 128
Code 39 und Code 128 sind beides lineare alphanumerische Barcodes. Code 39 kam vor Code 128 und ist in jeder technischen Hinsicht eingeschränkter. Der Vergleich ist relevant, weil viele Nutzer, die nach Code 39 suchen, ältere Systeme betreuen und die Alternative für künftige Anwendungen kennen sollten.
| Code 39 | Code 128 | |
|---|---|---|
| Standard | ISO/IEC 16388:2023 | ISO/IEC 15417:2007 |
| Zeichensatz | 43 characters (uppercase only natively) | All 128 ASCII (uppercase, lowercase, digits, control chars) |
| Lowercase | Via Full ASCII shift sequences only | Natively in Code Set B |
| Check character | Optional modulo-43 | Mandatory modulo-103 (auto-calculated) |
| Symbol type | Discrete (intercharacter gaps) | Continuous |
| Physical length | Longer for equivalent data | Shorter — Code Set C halves numeric length |
| Self-checking | Ja | Yes (via check character) |
| Active mandates | US DoD LOGMARS, some automotive | Warehouse, shipping, GS1-128 |
| Recommendation for new systems | No — use Code 128 | Ja |
Code 39 ist nicht veraltet – LOGMARS und einige Spezifikationen der Automobilindustrie schreiben ihn weiterhin ausdrücklich vor. Wenn Sie jedoch ein neues Etikettierungssystem einrichten und keine Vorschrift Code 39 verlangt, ist Code 128 die richtige Wahl.
Diesen Barcode in Bahrain und internationalen Lieferketten verwenden
Einzelhändler, Importeure, Hersteller und Logistikteams in Bahrain sollten sicherstellen, dass die Kennungen den Vorgaben ihrer Handelspartner entsprechen. GTINs für den Einzelhandel müssen von der zuständigen Vergabeorganisation stammen; ein Generator erstellt die Druckvorlage, weist aber keine Eigentümerschaft zu. Interne Bestands- und Anlagenkennungen können organisationsdefinierte Werte verwenden, sofern das empfangende System diese unterstützt.
Verwenden Sie in betrieblichen Anweisungen britisches Englisch, sofern es dem Stil Ihrer Organisation entspricht, und ergänzen Sie arabische Anweisungen für Teams, die diese benötigen. Drucken Sie unter den tatsächlichen Einsatzbedingungen. Die Hitze, das helle Licht, der Staub, gewölbte Verpackungen und reflektierende Laminierungen in Bahrain können Kontrast- oder Oberflächenprobleme sichtbar machen, die auf einem Monitor nicht zu erkennen sind.
Halten Sie die Ruhebereiche frei, vermeiden Sie es, das Bild zu strecken, und bevorzugen Sie dunkle Balken auf einem einfarbigen hellen Hintergrund. Scannen Sie Muster vom Anfang, aus der Mitte und vom Ende eines Drucklaufs. Bei regulierten Anwendungen im Einzelhandel, Gesundheitswesen, Verlagswesen oder in der Logistik sollten Sie vor der Produktionsfreigabe die aktuellen Vorgaben von GS1, der ISBN-Agentur, des Kunden oder der Branche bestätigen.
Vor dem Drucken
- Die richtige Symbolik wurde ausgewählt
- Eigentumsverhältnisse des Identifikators bestätigt
- Prüfziffer bestätigt
- Ruhezonen werden freigehalten
- Starker Balkenkontrast
- Seitenverhältnis unverändert
- SVG oder hochauflösendes PNG
- Test eines Produktionsscanners
Häufig gestellte Fragen
Öffnen Sie eine Frage, um eine kurze technische Antwort zu lesen.
01Was ist ein Code-39-Barcode?+
Code 39 ist ein selbstprüfender, linearer Barcode mit variabler Länge, der in der Norm ISO/IEC 16388:2023 definiert ist. Er wird auch als „Code 3 of 9“ und „Alpha39“ bezeichnet. Jedes Zeichen besteht aus 9 Elementen – 5 Strichen und 4 Lücken –, von denen genau 3 breit sind. Der native Zeichensatz umfasst 43 Zeichen: Großbuchstaben A–Z, Ziffern 0–9 und sieben Sonderzeichen. Das Sternchen dient als obligatorisches Start- und Stopp-Trennzeichen.
02Welche Zeichen können mit Code 39 kodiert werden?+
Der native 43-Zeichen-Zeichensatz von Code 39 umfasst die Großbuchstaben A–Z (26 Buchstaben), die Ziffern 0–9 (10) sowie sieben Sonderzeichen: Leerzeichen, Bindestrich, Punkt, Dollarzeichen, Schrägstrich, Pluszeichen und Prozentzeichen. Full ASCII Code 39 erweitert den Zeichensatz mithilfe von zweistelligen Umschaltsequenzen auf alle 128 ASCII-Zeichen, erfordert jedoch Scanner, die für den Full-ASCII-Modus konfiguriert sind.
03Wird Code 39 noch verwendet?+
Ja. Der LOGMARS-Standard des US-Verteidigungsministeriums (basierend auf MIL-STD-1189B) schreibt Code 39 für die Kennzeichnung von Bauteilen in der Lieferkette des Verteidigungssektors vor. Automobilhersteller und ihre Zulieferer verwenden Code 39 im Rahmen der Teileverfolgung. Auch viele ältere Lager- und Bestandsverwaltungssysteme im Gesundheitswesen nutzen ihn weiterhin. Für jede neue Einführung ohne spezifische Vorgabe ist jedoch Code 128 die bevorzugte Symbologie.
04Was ist der Unterschied zwischen Code 39 und Code 128?+
Code 128 (ISO/IEC 15417:2007) kodiert alle 128 ASCII-Zeichen einschließlich Kleinbuchstaben und erzeugt kürzere Symbole für gleichwertige Daten. Code 128 Code Set C kodiert Ziffernpaare in einem Codewort, wodurch sich die physikalische Länge von Zahlenfolgen etwa halbiert. Code 39 (ISO/IEC 16388:2023) codiert von Haus aus nur 43 Zeichen, unterstützt keine Kleinbuchstaben und ist bei gleichen Datenlängen länger. Verwenden Sie Code 39 nur, wenn dies aufgrund einer Vorschrift oder eines Altsystems erforderlich ist.
05Verfügt der Code 39 über eine Prüfziffer?+
Die Prüfziffer bei Code 39 ist optional. ISO/IEC 16388:2023, Anhang A, definiert einen Modulo-43-Algorithmus: Jedem Zeichen wird ein Wert zwischen 0 und 42 zugewiesen, alle Werte werden addiert, durch 43 geteilt, und der Rest entspricht der Prüfziffer. Einige Anwendungen verwenden die Prüfziffer; andere stützen sich ausschließlich auf die Selbstprüfungsstruktur von Code 39. Stellen Sie sicher, dass die Einstellung für die Prüfziffer im Etikettendrucker und in der Scannerkonfiguration übereinstimmt.
06Was ist der LOGMARS-Barcode?+
LOGMARS (Logistics Applications of Automated Marking and Reading Symbols) ist der Standard des US-Verteidigungsministeriums für die Barcode-Kennzeichnung in der Lieferkette des Verteidigungssektors, der auf MIL-STD-1189B basiert. LOGMARS legt Code 39 als vorgeschriebene Barcode-Symbologie für Teile, Komponenten und Baugruppen fest. Rüstungsunternehmen, die an das US-Verteidigungsministerium liefern, müssen LOGMARS-konforme Code-39-Etiketten auf den angegebenen Artikeln anbringen.
07Können Kleinbuchstaben im Code 39 kodiert werden?+
Nicht von Haus aus. Der Standardzeichensatz mit 43 Zeichen umfasst ausschließlich Großbuchstaben. Der Full-ASCII-Code 39 verwendet zweistellige Umschaltsequenzen, um alle 128 ASCII-Zeichen darzustellen, einschließlich Kleinbuchstaben; hierfür sind jedoch Scanner erforderlich, die ausdrücklich für den Full-ASCII-Modus konfiguriert sind. Standard-Code-39-Decoder interpretieren Full-ASCII-Umschaltsequenzen nicht korrekt.
08Wie lautet das Verhältnis von breiten zu schmalen Strichen bei Code 39?+
ISO/IEC 16388:2023 legt ein nominelles Verhältnis von breiten zu schmalen Elementen von 2,0:1 bis 3,0:1 fest. Das Toleranzband liegt zwischen 1,8:1 und 3,4:1. Ein Verhältnis unter 1,8:1 erschwert die Unterscheidung zwischen breiten und schmalen Elementen. Eine ungleichmäßige Skalierung des Barcode-Bildes kann das Verhältnis verändern und es außerhalb der Toleranzgrenzen verschieben, was zu Scanfehlern führen kann.
09Was ist „Full ASCII Code 39“?+
Full ASCII Code 39 ist eine Erweiterung von Code 39, bei der alle 128 ASCII-Zeichen mithilfe von Zweizzeichenfolgen kodiert werden. Die vier Umschalzeichen – $, /, %, + – werden mit einem weiteren Code-39-Zeichen kombiniert, um die 85 ASCII-Zeichen darzustellen, die nicht im ursprünglichen 43-Zeichen-Zeichensatz enthalten sind. Full ASCII Code 39 ist in der Norm ISO/IEC 16388:2023 definiert. Scanner müssen ausdrücklich für die Dekodierung von Full-ASCII-Sequenzen konfiguriert werden; im Standard-Code-39-Modus werden diese falsch gelesen.
10Benötige ich eine GS1-Lizenz, um Code 39 zu verwenden?+
Nein. Der Code 39 kodiert beliebige alphanumerische Daten, ohne dass eine Lizenz erforderlich ist. Er kann uneingeschränkt für die interne Kennzeichnung – Teilebeschriftung, Inventaretiketten, Bestandsetiketten – verwendet werden, ohne dass eine Registrierung oder Genehmigung erforderlich ist. Eine GS1-Lizenz ist nur dann erforderlich, wenn die kodierten Daten eine GS1-lizenzierte GTIN für den Einzelhandelsverkauf oder die Verwendung in der GS1-Lieferkette enthalten.