CODE 39 ist ein 1975 von der Intermec Corporation entwickelter Barcode, der 43 Zeichen enthalten kann, einschließlich des englischen Alphabets, der Zahlen, des Leerzeichens und einiger Symbole, nämlich 0123456789 ABCDEFG HIJKLMNOP QRSTUVWXYZ -. $ / +%. Da CODE 39 Briefe unterstützt, ist es für industrielle Anwendungen wie Automobil und Elektronik unverzichtbar. In Deutschland wird es beispielsweise für pharmazeutische Produkte verwendet, aber hauptsächlich für die Lagerung. In Russland wird CODE 39 durch GOST 30742-2001 (ISO / IEC 16388-99) „Automatische Identifizierung. Strichcode. Code 39-Symbologiespezifikation (Code 39) “ bestimmt.
CODE 39 wird aufgrund seiner Struktur aus Spalten und Leerzeichen so benannt, wobei 3 von 9 Spalten und Leerzeichen breit sind. Der Barcode sieht folgendermaßen aus:
Intercharakter Pause
Diese Tabelle beschreibt die CODE 39-Spezifikation. Der jedem Zeichen zugewiesene numerische Wert (außer Start / Stopp) wird im Prüfsummenalgorithmus verwendet.
CODE 39 wird manchmal mit einer zusätzlichen Prüfziffer mod 43 verwendet, der Prüfziffercode sieht aus wie "CODE 39 mod 43"
Und hier ist der Algorithmus zur Berechnung der Prüfsumme:
Code 39 Extended ist eine erweiterte Version von Code 39, die den ASCII-Zeichensatz unterstützt. Damit können Sie 128 Zeichen codieren: 0123456789 ABCDEFG HIJKLMNOP QRSTUVWXYZ! # $% & '() * +, -. / :; <=>? @ [\] ^ _ `{|} Abcdefg hijklmnopqrs tuvwxyz, das sind 26 Großbuchstaben Buchstaben (AZ), 26 Kleinbuchstaben (az) und Sonderzeichen zusammen mit einem Leerzeichen.
Wichtig ist, dass Extended Code 39-Zeichen ungefähr doppelt so lang sind wie Standardcode 39-Zeichen. Gemäß ISO 646 werden diese Zeichen durch Kombinieren von zwei Zeichen angezeigt. Das erste Zeichen kann eines von vier $ +% / Zeichen sein, gefolgt von einem von 26 Buchstaben. Wenn der Decoder mit dem vollständigen ASCII-Zeichensatz programmiert ist, wird nur das ASCII-Äquivalent übertragen, nicht die Zeichenkombination.
CODE 39 Extended kann auch mit einer Prüfsumme verwendet werden, das Modul 43 berechnet wird, und der Code mit der Prüfziffer sieht aus wie „CODE 39 EXTENDED mod 43 ”.
Vergleichen wir die gleichen Sätze in verschiedenen Barcodes. In beiden Fällen sehen wir keinen Unterschied in der ersten Spalte. Aber warum gibt es keinen Unterschied? Dies liegt daran, dass die Zeichen 0123456789 ABCDEFG HIJKLMNOP QRSTUVWXYZ -. $ / +% In zwei Barcodes werden auf die gleiche Weise codiert, es lohnt sich jedoch, Großbuchstaben durch Kleinbuchstaben zu ersetzen, wenn Änderungen auftreten.
Auch in CODE 39 Extended werden Zeichen durch Kombinieren von zwei Zeichen angezeigt. Das erste kann eines von vier Zeichen $ +% / sein, gefolgt von einem von 26 Buchstaben.
Mit FastReport VCL können Sie beide zuvor beschriebenen Barcode-Typen in Ihren Reporten verwenden. Mal sehen, wie das funktioniert.
Fügen Sie im FastReport VCL-Designer die obCatBarcode-Komponente zum Report hinzu und wählen Sie den Typ aus der vorgeschlagenen Liste aus:
Als nächstes gehen wir zum Barcode-Editor:
Code - Bereich zum Schreiben des numerischen Werts des Barcodes;
Art des Balkens - Der Typ des Barcodes kann sofort im Editor geändert werden, ohne dass dem Bericht eine neue Komponente hinzugefügt werden muss.
Calc CheckSum ist eine Prüfsumme. Alle linearen Barcodes haben diese Eigenschaft. Erinnern Sie sich daran, das Lesen übersprungen zu haben? Wir müssen das irgendwie bekämpfen! Die Eigenschaft bestimmt, ob die Prüfsumme automatisch berechnet werden soll. Wenn es deaktiviert ist, muss die Prüfsumme im Objekttext vorhanden sein.
Zoom - Legt die Skalierung des Barcodes fest und wird nur in Verbindung mit der Eigenschaft "Autosize" verwendet.
Text - Aktiviert / Deaktiviert die Anzeige von Text unter dem Barcode.
Drehung - Mit dieser Option können Sie die Drehung des Objekts auf einen der festen Winkel einstellen - 0, 90, 180, 270 Grad.
Klicken Sie auf das Symbol F (x) und rufen Sie den Editor für große Ausdrücke auf.
Weitere Details finden Sie selbst im FastReport VCL-Designer oder in der Dokumentation. link 1 und link 2
Und weiter gehen wir in die Komponenten Eigenschaften obCatBarcode.
Was im Barcode-Editor im Feld Code geschrieben wird, wird in das Feld Ausdruck übertragen. Wenn Ausdruck leer ist, wird der Text aus dem Feld Text angezeigt.
Kurz gesagt, Text ist ein statischer Text, und Ausdruck enthält den auszuwertenden Ausdruck, einschließlich des Werts aus der Datenquelle.
CODE 39 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
uses frxBarcod; procedure TForm1.Button1Click(Sender: TObject); var bc: TfrxBarcodeView; begin bc := TfrxBarcodeView(frxReport1.FindObject('BarCode1')); {Barcodes Typ bestimmen} bc.BarType := bcCode39; {Fixierten Wert des Barcodes bestimmen} bc.Text := '123456'; {Set the calculated barcode value} {Kalkulierten Wert des Barcodes bestimmen} //bc.Expression := '<YourDatasetName."FieldName1"> + <YourDatasetName."FieldName2">'; {Wir legen fest, ob die Prüfsumme berechnet und am Ende des Barcodes hinzugefügt werden muss} bc.CalcCheckSum := False; {Barcodes Masßtabe einsetzen} bc.Zoom := 2; {Rotation Ecke einsetzen. Kann folgende Werte haben: 0, 90, 180, 270} bc.Rotation := 0; {Bestimmen der Barcodes Breite gemäß der Barcodes Inhalt} {Wenn Zoom gleich False ist, soll Barcodes Breite fixiert werden} bc.AutoSize := True; {Barcodes Farbe bestimmen} bc.Color := clNone; {Barcodes Linien Farbe bestimmen} bc.ColorBar := clBlack; {Bestimmen, ob der Text hinten des Barcodes angezeigt wird} bc.ShowText := True; frxReport1.ShowReport(); end; |
Jetzt können wir den Barcode des CODE 39-Standards in unseren Geschäftsanwendungen verwenden (nicht nur numerische, sondern auch alphabetische Zeichen codieren), beispielsweise fürs Verwenden in den Etiketten (z. B. im ZPL-Format).