Ein Barcode aus senkrechten Strichen

Zeichnen Sie einen Barcode, den ein Scanner liest: Code 128, Code 39, Code 93, ITF-14, Codabar, EAN-13, UPC-A, EAN-8, UPC-E, GS1 DataBar und die beiden Add-ons.

In einem echten PDF ansehen

Code 128 und Handels-Barcodes

Striche für die beiden Aufgaben, die sie wollen: Code 128 für beliebigen Text und die drei, die eine Kasse liest — EAN-13, UPC-A, EAN-8 —, jeder mit berechneter statt eingetippter letzter Ziffer.

Das PDF öffnen Das vollständige Beispiel ansehen

Auch zu sehen in: Alle linearen Barcodes auf einer Seite · Ein Kassenbon auf einer Papierrolle · Ein Bogen mit Regaletiketten

Zusammenfassung

Die schwarzen Striche, die der Kassierer unter dem kleinen roten Licht durchzieht. Sie geben den Rahmen an, in den er passen muss, und die Striche werden in der richtigen Breite gezeichnet, mit dem weißen Rand an beiden Enden, den Scanner verlangen. Bei einem Code, den eine Ladenkasse liest, reichen einige Striche tiefer als ihre Nachbarn — ein Paar an jedem Ende und eines in der Mitte —, und die Ziffern werden in die Lücke gesetzt, die sie lassen. Weil sie wirklich gezeichnet und nicht als Foto eingefügt sind, bleiben sie im Druck scharf, auch auf einem winzigen Etikett. Wollen Sie die Nummer zusätzlich in Ziffern unter den Strichen ausgeschrieben haben, fügen Sie direkt darunter einen Textblock hinzu. Welche Art von Code gezeichnet wird, wählen Sie. Code 128 trägt jeden Text. Code 39 und Code 93 tragen Großbuchstaben, Ziffern und einige Satzzeichen, also das, was ein Werkstattetikett, ein Lagerfach und ein Krankenhausarmband tragen. ITF-14 ist der Code auf dem Umkarton, den ein Laden angeliefert bekommt. Codabar ist der Code auf einem Blutbeutel, einem Bibliotheksausweis und einem Kurierfrachtbrief. EAN-13, UPC-A und EAN-8 sind die Artikelnummer, die eine Kasse liest, und UPC-E ist dieselbe Nummer auf einer Packung, die zu klein ist, um sie zu fassen. Ein loses Stück Fleisch oder Obst trägt einen GS1 DataBar, der die Artikelnummer in einem Symbol trägt, das aus jedem Winkel gelesen wird. Neben dem Code einer Zeitschrift oder eines Buchs steht ein kleinerer Strichblock — das Add-on, EAN-2 oder EAN-5 —, der die Heftnummer oder den vom Verlag empfohlenen Preis trägt.

Technisch

Angefordert mit "type": "barcode"

Die Striche sind gefüllte Rechtecke, direkt in den Inhaltsstream der Seite geschrieben — kein Bild, keine Schrift, kein Plug-in der Anzeigesoftware. Die Striche und die Ruhezonen füllen die Breite des Rechtecks. Ein Modul ist der dünnste Strich des Codes, die Einheit, in der jede andere Breite gezählt wird. Bei einem Handelscode nehmen die Begrenzungsstriche — das Paar an jedem Ende und das Paar in der Mitte — die ganze Höhe des Rechtecks ein, und jeder andere Strich endet fünf Module über seinem Fuß; das ist der Raum, in dem die unter dem Code gesetzten Ziffern stehen; wo fünf Module mehr als die halbe Höhe wären, nehmen die Begrenzungsstriche die Hälfte. Ein Code 128 hat keine Begrenzungsstriche, alle seine Striche nehmen also die ganze Höhe ein. Die Symbologien, die eine Anfrage nennt: Code 128 trägt die druckbaren ASCII-Zeichen. Codesatz C schreibt zwei Ziffern in ein Symbol — eine ungerade Anzahl beginnt in Codesatz B für die erste Ziffer —, und Codesatz B schreibt ein Zeichen pro Symbol, sodass vierzehn Ziffern in Codesatz C 112 Module brauchen gegenüber 189 in Codesatz B. Sich selbst überlassen nimmt ein Code 128 für einen Inhalt nur aus Ziffern Codesatz C und für alles andere Codesatz B, und code_set nennt stattdessen einen der beiden; ein Inhalt, der nicht nur aus Ziffern besteht, wird in Codesatz C abgelehnt. Code 39 trägt die zehn Ziffern, die Großbuchstaben, das Leerzeichen und die sechs Zeichen -, ., $, /, + und %; ein Kleinbuchstabe wird abgelehnt, und check_digit fügt das Prüfzeichen Modulo 43 hinzu, das ein Scanner mit dem Text zurückgibt. Code 93 trägt dieselben Zeichen auf etwa halbem Raum und trägt immer seine zwei Prüfzeichen. ITF-14 trägt vierzehn Ziffern: Dreizehn sind die Kartonnummer, und die Prüfziffer wird berechnet, vierzehn sind der ganze Code, und die letzte wird geprüft. Codabar trägt die zehn Ziffern und die sechs Zeichen -, $, :, /, . und + und beginnt und endet mit einem von A, B, C oder D, das ein Scanner mit dem Rest zurückgibt. Bei EAN-13 sind zwölf Ziffern die Nummer, und die Prüfziffer wird berechnet, dreizehn sind der ganze Code, und die Prüfziffer wird geprüft; dieselbe Regel gilt für UPC-A mit elf oder zwölf Ziffern, für EAN-8 mit sieben oder acht und für UPC-E mit sieben oder acht, dessen erste Ziffer 0 oder 1 ist. Der GS1 DataBar Omnidirectional, der Code eines losen Handelsartikels, trägt die vierzehnstellige Artikelnummer, die ein ITF-14 trägt: Dreizehn Ziffern sind die Nummer, und die Prüfziffer wird berechnet, vierzehn sind der ganze Code, und die letzte wird geprüft, und jede andere Ziffernzahl wird abgelehnt. EAN-2 nimmt genau zwei Ziffern an und EAN-5 genau fünf. Text, den die gewählte Symbologie kodieren kann, wird angenommen; alles andere führt zu 400. Ein Add-on ist für einen Scanner kein eigener Code: Es wird als Schwanz des Handelscodes daneben gelesen, und nur solange beide dicht beieinanderstehen. Das Rechteck wird durch die Modulzahl des Codes plus zwanzig geteilt — zehn leere Module an jedem Ende —, sodass die neun leeren Module, die die Norm zwischen den Strichen beider Codes verlangt, bedeuten, dass das Rechteck des Add-ons elf Module vor dem Ende des Rechtecks des Handelscodes beginnt, beide im selben Modul gezeichnet. Setzen Sie es weiter weg oder kürzer als den Code daneben, und ein Scanner liest nur den Handelscode und verwirft das Add-on wortlos: Ein schlecht platziertes Add-on soll in der nächsten Version abgelehnt werden; bis dahin hält der Kunde, der beide auf die Seite setzt, den Abstand ein. symbology liest die obigen Namen und nichts anderes.

Anfrageschema

Erforderliche Schlüssel: content, eine Zeichenkette; rect. Optional: symbology, einer der Werte code128 (Standard), code39, code93, itf14, codabar, ean13, upc_a, ean8, upc_e, data_bar, add_on2 oder add_on5; check_digit, true, um nach dem Text eines Code 39 das Prüfzeichen Modulo 43 mitzuführen; code_set, b oder c, der Codesatz, in dem ein Code 128 geschrieben wird, weggelassen, damit der Code bei einem Inhalt nur aus Ziffern c und bei allem anderen b nimmt; fill, die Farbe der Striche (standardmäßig Schwarz), geschrieben, wie Farbe überall sonst geschrieben wird: eine Zahl für Grau, drei für Rot, Grün und Blau, vier für die vier Druckfarben, {"gray": n} oder {"space": "name", "components": …}; pages, ein Array von ab eins gezählten Ganzzahlen, standardmäßig leer; transform, sechs Zahlen; rotate, Grad gegen den Uhrzeigersinn um die Mitte des Rechtecks; layer, der Name einer deklarierten Ebene. Gegenseitige Ablehnungen: transform zusammen mit rotate, check_digit bei jeder Symbologie außer code39, code_set bei jeder Symbologie außer code128 und code_set auf c bei einem Inhalt, der nicht nur aus Ziffern besteht. Ein EAN-13, EAN-8, UPC-A oder UPC-E nimmt außerdem digits an, ein Objekt: font, erforderlich, der Name einer deklarierten Schrift, die die Höhe ihrer Großbuchstaben angibt, nach der die Ziffern bemessen werden; light_margin, ein boolescher Wert, standardmäßig false, wobei true rechts von einem EAN-Code mit einem > markiert, wie weit seine Hellzone reicht. Die Ziffern werden dort unter die Striche gesetzt, wo die Norm sie hinsetzt; fehlt es, zeichnet das Element nur die Striche, und die für Menschen lesbaren Ziffern werden mit einem text-Element gesetzt. digits bei jeder anderen Symbologie wird abgelehnt, ebenso light_margin bei einem UPC-Code, der keine markiert. module, ein Objekt aus width in Punkt und dpi, rastet den schmalsten Strich auf ganze Pixel des Druckers ein, der das Etikett druckt: Das Rechteck ist dann eine Grenze statt einer zu füllenden Breite, der Code beginnt an seiner linken Kante in der Breite, die das Modul ihm gibt, und ein Code, der breiter als das Rechteck herauskommt, führt zu 400. Ein Modul kann anstelle einer width scanned angeben: wo der Code gescannt wird, je eine Tabelle der GS1 General Specifications, retail_point_of_sale, general_distribution, retail_and_distribution, neither_retail_nor_distribution oder logistic_units; das Modul ist dann die Breite, um die die Tabelle angelegt ist, auf einer ganzen Zahl von Pixeln des Druckers.

Eine vollständige Anfrage, die ein PDF erzeugt

{
  "items": [
    {
      "type": "barcode",
      "content": "FR-1964413",
      "symbology": "code128",
      "artifact": "footer",
      "rect": {"llx": 72, "lly": 700, "urx": 237, "ury": 740}
    },
    {
      "type": "barcode",
      "content": "40063813339301",
      "symbology": "code128",
      "code_set": "c",
      "rect": {"llx": 72, "lly": 640, "urx": 237, "ury": 680}
    }
  ]
}

Die Zeile, die es sendet, in drei Sprachen

Barcodes und quadratische Codes

Ein quadratischer QR-Code, mit dem Telefon gelesen Ein Aztec-Code ohne weißen Rand Ein Data-Matrix-Code, sehr klein und sehr robust Ein PDF417-Code, der ein ganzes Formular trägt

Wohin als Nächstes

Jeder JSON-Schlüssel einer Anfrage, auf einer Seite Die übrigen zweiundzwanzig Dinge, die Sie zeichnen können

Die Preise ansehen Die Beispiele ansehen