bx:barcode
Mit dem Tag barcode können verschiedene 1D und 2D-Codes erzeugt werden (Beispiele siehe unten). Ein Check auf Fehler ist mit bx:if möglich. Die Größe ist frei wählbar. Das erzeugte Format ist PNG (ggf. mit Transparenz)
Funktionen:
Allgemeine Syntax
<bx:barcode.qr width="250" height="250" [type="path"] [rotate="90"]> Inhalt </bx:barcode.qr>
Parameter für alle Typen
Es ist generell empfehlenswert einen minimalen Kontrast-Rand (z.B. in weiß) zu setzen, damit Barcodeleser den Code einfacher identifizieren können.
Es kann weitere Einschränkungen, je nach offizieller Spezifikation des jeweiligen Barcode-Types, geben, die hier nicht extra aufgeführt sind.Die Ausgabegröße des Barcode-Bilds musst nicht exakt der angegebenen `width` / `height` entsprechen (liegt aber zumindest nicht darüber). Falls eine pixelgenaue Ausgabe benötigt wird, sollte ein Container um das Bild gepackt werden.
Typ-spezifische Informationen
Die gezeigten Beispiele müssen nicht unbedingt den Anforderungen des jeweiligen Standards entsprechen! Es können also auch potentiell invalide Barcodes entstehen. Es ist die Spezifikation des jeweiligen Types zu Rate zu ziehen!
1-Dimensionale Codes
Bei allen 1-dimensionalen Codes kann der parameter margin verwendet werden. Dieser legt die Größe des Randes links und rechts fest (0 für keinen Rand, Standard ist 10).
Typ |
Ausgabe |
|---|
<bx:barcode.codabar>
"12345"ABCDODER beginnt und endet mit einem Guard-Zeichen aus: TN*Efalls keine Guards gesetzt sind, wird automatisch A genommenenthält nur Zeichen aus: 0123456789-$:/.+
<bx:barcode.code_39>
"BATIX"
0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. *$/+%
<bx:barcode.code_93>
"BATIX"
<bx:barcode.code_128>
"BATIX"
<bx:barcode.itf>(Interleaved Two of Five)
"123456"<bx:barcode.ean_8>
"12345678"
<bx:barcode.ean_13>
"1234567891118"<bx:barcode.upc_a>
"12345678910"<bx:barcode.upc_e>
"12345678"
2-Dimensionale Codes
Typ |
Ausgabe | spezielle Parameter | Einschränkungen |
|---|---|---|---|
<bx:barcode.qr> |
"http://batix.de" |
eclmargincharset |
Achtung: Die Länge des verschlüsselten Strings kann die Ausgabe beeinflussen |
<bx:barcode.datamatrix> |
"http:/batix.de" (rechts mit shape=square) "Lorem ipsum dolor sit amet" (rechts mit shape=rectangle) |
shapenone (Standard, es wird automatisch je nach Inhalt das passende Shape gewählt)square (Quadrat erzwingen)rectangle (Rechteck erzwingen) |
|
<bx:barcode.aztec> |
"http://batix.de" |
ecllayerscharset |
|
<bx:barcode.pdf_417> |
"BATIX" |
margineclcharsetcompactcompactiondimensions |
Fehlerabfrage
<bx:if><bx:barcode.ean_8>1234</bx:barcode.ean_8><bx:if.else>Es konnte leider kein Barcode erzeugt werden!</bx:if.else></bx:if>
Da bx:barcode im Fehlerfall nichts ausgibt, kann ein alternativer Text mittels bx:if ausgegeben werden.
Beispiele
Beispiel Titel
<bx:barcode.qr>Hallo</bx:barcode.qr>
<bx:barcode.datamatrix shape="rectangle">Hallo</bx:barcode.datamatrix>
"http://batix.de"
"http:/batix.de" (rechts mit shape=square)
"
"http://batix.de"
"BATIX"