AA_PO-23839-123RF-sdmix_123RF-Barcode_Zebra.jpg

© sdmix, 123RF

Strichcodes und QR-Codes mit LaTeX erstellen

Linientreu

Als Bar- oder QR-Code aufbereitete Informationen lassen sich mit der richtigen App auf dem Smartphone oder Tablet schnell einlesen und weiterverarbeiten. Perfekte Codes dazu erstellen Sie mit LaTeX.

Strich- und 2D-Codes begegnen uns täglich in den verschiedensten Ausführungen und zu den unterschiedlichsten Zwecken. Schon lange reduzieren sie auf Produkten die Wartezeit an der Kasse, wo sich damit die Preise einfach einscannen lassen. Wer ein Buch kaufen möchte, scannt einfach den Strichcode mit der ISBN ein und bestellt das Buch online. Inzwischen ersetzen 2D-Codes auch Briefmarken und finden sich auf Bahnfahrtkarten ebenso wie auf Theater- und Kinokarten. Infotexte zu Sehenswürdigkeiten lassen sich als QR-Code mit den Smartphone oder Tablet einlesen. Eine WLAN-Verbindung bauen Sie im Nu auf, wenn die Zugangsdaten als QR-Code bereitstehen. Kontaktinformationen scannen Sie einfach via QR-Code von der Visitenkarte eines Gesprächspartners.

Mit dem LaTeX-Paket PST-Barcode [1] haben Sie ein mächtiges Werkzeug zur Hand, mit dem Sie viele verschiedene Arten von Codes schnell und einfach erzeugen. Listing 1 zeigt ein Minimalbeispiel für eine LaTeX-Datei mit PST-Barcode. Nach der Angabe der Dokumentenklasse (Zeile 1) laden Sie zunächst das Paket in der Präambel des LaTeX-Dokuments (Zeile 2). PST-Barcode verwendet PSTricks [2], das automatisch mitgeladen wird, sodass Ihnen auch alle Möglichkeiten dieses Pakets zur Verfügung stehen.

Listing 1

\documentclass{article}
\usepackage{pst-barcode}
\begin{document}
\begin{pspicture}(3.5,3)
\psbarcode{4196067008502}{includetext}{ean13}
\end{pspicture}
\end{document}

Im Hauptteil der LaTeX-Datei nutzen Sie die pspicture-Umgebung (Zeilen 4 bis 6), wobei die beiden Zahlen in der runden Klammer (Zeile 4) die Koordinaten für die rechte obere Ecke des Strich- oder 2D-Codes bezeichnen. PST-Barcodes stellt ein Makro bereit (Zeile 5), mit dem Sie eine Fülle von Strich- und 2D-Codes erzeugen können. In die erste geschweifte Klammer gehört der Wert, der als Strich- oder 2D-Code erscheinen soll; die zweite geschweifte Klammer nimmt weitergehende Optionen auf. Im Beispiel findet sich hier die Angabe, dass der Wert auch lesbar dargestellt werden soll. In der letzten geschweiften Klammer legen Sie die Art des zu generierenden Codes fest.

Je nach Strich- oder 2D-Code, den Sie erzeugen wollen, müssen Sie in Listing 1 nur die Koordinaten der rechten oberen Ecke (Zeile 4) sowie die Werte für den Code (Zeile 5) anpassen.

TIPP

Die hier abgedruckten Listings umfassen aus Platzgründen nur den jeweils relevanten Teil des LaTeX-Codes. Die vollständigen Listings finden Sie bei Interesse auf der Heft-DVD zu dieser Ausgabe.

Da PostScript-Code zum Einsatz kommt, können Sie aus der LaTeX-Datei nicht ohne Weiteres mit PDFLaTeX ein PDF-Dokument generieren. Stattdessen verwenden Sie einfach Xe(La)TeX [3], das den Postscript-Code automatisch erkennt und entsprechend verarbeitet. Alternativ generieren Sie aus der LaTeX-Datei mit dem Befehl pslatex Datei ein DVI-File, das Sie dann mittels des Kommandos dvips Datei in eine Postscript-Datei umwandeln.

Abhängig davon, wie Sie den Strich- oder 2D-Code weiterverarbeiten möchten, können Sie anschließend mit ps2pdf Datei ein PDF-Dokument erzeugen. Für eine Bilddatei etwa im SVG- oder PNG-Format greifen Sie zum Programm ImageMagick [4] und setzen folgenden Befehl ab:

$ convert Postscript-Datei Grafik-Datei

Möchten Sie doch PDFLaTeX nutzen, laden Sie im LaTeX-Dokument zusätzlich das Paket auto-pst-pdf [5] und erstellen auf diesem Weg das gewünschte PDF:

$ pdflatex --shell-escape Datei

Aus der Fülle der Möglichkeiten, die PST-Barcode bietet, wollen wir hier beispielhaft näher auf die zwei Varianten eingehen, die in der Praxis wohl am häufigsten zum Einsatz kommen: der ISBN-Strichcode und der QR-Code.

Handelsüblich

Bei der European Article Number EAN handelt es sich um eine 13-stellige Zahl, anhand derer sich ein Produkt im Handel eindeutig identifizieren lässt. Auf Produktverpackungen finden Sie solche EAN-13-Nummern als Strichcodes, die die Verkäuferin an der Kasse scannt und so den Preis automatisch verbucht. Die EAN ermöglicht Ihnen als Verbraucher aber auch, Produktinformationen online abzurufen, etwa über die OpenEANDB [6].

Eine Sonderform der EAN-13-Nummern stellt die Internationale Standardbuchnummer ISBN dar. Lauten deren ersten drei Ziffern 978 (oder 979 – zur Zeit allerdings noch nicht genutzt), handelt es sich bei der EAN um eine ISBN. Es schließt sich die ISBN-Gruppennummer an, die den Sprachraum des Buchs bezeichnet, gefolgt von der Verlagsnummer, einer Unterscheidungsnummer und der letzten Ziffer als Prüfziffer. Neben dem ISBN-Strichcode findet sich auf dem Cover oft ein sogenannter EAN-5-Strichcode mit dem Preis des Buchs.

Listing 2 enthält den LaTeX-Code, der einen Strichcode mit einer ISBN (Zeile 2) sowie einen weiteren Strichcode mit dem Buchpreis (Zeile 5) generiert. Im Befehl in Zeile 2 steht die ISBN selbst in der ersten geschweiften Klammer. Die 978 am Anfang dürfen Sie weglassen, ebenso die Prüfziffer am Schluss – beides ergänzt LaTeX automatisch. Der Befehl in der zweiten geschweiften Klammer legt fest, dass die ISBN auch in Ziffern erscheint. Dem Inhalt der dritten geschweiften Klammer entnimmt LaTeX, dass es einen Code für eine ISBN generieren soll. In Zeile 5 finden sich der Buchpreis in Cent als fünfstellige Zahl mit führenden Nullen (erste geschweifte Klammer) sowie die Art des Codes, den LaTex erzeugen soll (letzte geschweifte Klammer). Die Abbildung 1 zeigt das generierte Ergebnis.

Listing 2

\begin{pspicture}(3.5,3)
\psbarcode{3-88309-455}{includetext}{isbn}
\end{pspicture}
\begin{pspicture}(1.5,3)
\psbarcode{00700}{}{ean5}
\end{pspicture}
Abbildung 1: Strichcodes mit ISBN und Buchpreis können Sie mit LaTeX problemlos erzeugen.

Praktisch einquadriert

QR-Codes begegnen uns überall und dienen den verschiedensten Zwecken. Im einfachsten Fall enthalten sie schlicht einen Text, der sich auf dem Smartphone oder Tablet anzeigen lässt. In der Praxis kommen solche Codes mit Infotexten etwa an Kunstwerken oder Sehenswürdigkeiten zum Einsatz. In LinuxUser enthält der QR-Code am Artikelende die Links zum Beitrag, die sonst angesichts der heute modernen "sprechenden URLs" beträchtlichen Raum einnehmen würden.

Listing 3 enthält ein Beispiel mit einem kurzen Text. Hier kommt wieder der bereits bekannte Befehl psbarcode zum Einsatz, und auch hier enthält die erste geschweifte Klammer den zu codierenden Wert, in diesem Fall einen Text. Die letzte geschweifte Klammer gibt die Art des zu erstellenden Codes an. In diesem Beispiel haben wir außerdem noch eine eckige Klammer ergänzt, deren Inhalt dafür sorgt, dass der QR-Code um 45 Grad gedreht erscheint. Das Ergebnis sehen Sie in Abbildung 2 ganz links.

Listing 3

\psbarcode[rotate=45]{Hallo Welt!}{}{qrcode}

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Strich- und 2D-Code für Alle
    Auch im Kleinunternehmen oder zu Hause ermöglichen Barcodes oft ein rationelleres Arbeiten. Mit den passenden Programmen und kostengünstiger Hardware erzeugen und lesen Sie die wichtigsten Codes problemlos.
  • Strichweise
    Daten wiederzufinden, eindeutig zuzuordnen und als vollständig und authentisch zu identifizieren, ist nicht leicht. Hintergrundbilder und Barcodes können dabei helfen.
  • QR-Codes unter Linux erzeugen und lesen
    QR-Codes dechiffrieren Sie nicht nur mit dem Smartphone, sondern auch unter Linux. Mit den passenden Werkzeugen erstellen Sie zudem im Nu eigene Code-Quadrate, etwa mit Ihrer Adresse für die Visitenkarte.
  • Kurzanleitung: QR-Codes mit Linux und ZBar scannen
    Auf der Suche nach einem QR-Code-Generator bin ich auf eine Software gestoßen, die sich perfekt als QR-Scanner für Linux eignet: ZBar.
  • KBarcode4-light erzeugt Barcodes unter KDE 4

    Bis das Programm KBarcode vollständig auf KDE 4 portiert ist, bietet der Entwickler Dominik Seichter den Anwendern KBarcode4-light zum Erstellen von Strichcodes an.
Kommentare

Infos zur Publikation

LU 08/2017: VIRTUALISIERUNG

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Bash awk Verständnis-Frage
Josef Federl, 22.07.2017 17:46, 2 Antworten
#!/bin/bash # Skriptdateiname = test.sh spaltennummer=10 wert=zehner awk '{ $'$spaltennummer'...
Bash - verschachtelte Variablenersetzung, das geht doch eleganter als meine Lösung?
Josef Federl, 18.07.2017 20:24, 2 Antworten
#!/bin/bash #Ziel des Skriptes wird sein die ID zu extrahieren hier nur als Consolentest: root@...
Speicherplatzfreigabe mit "sudo apt-get clean" scheitert
Siegfried Böttcher, 16.07.2017 21:16, 2 Antworten
Speicherplatzfreigabe mit "sudo apt-get clean" scheitert, weil aus mir unerfindlichen Gründen im...
Möchte Zattoo vom PC am Fernsehgerät sehen können
Ilona Nikoui, 15.07.2017 18:25, 3 Antworten
Hallo, ich habe mein Fernsehgerät, ein LG 26LE3300 mit dem PC verbunden per HDMI Kabel, wie empfo...
TUXEDO und Hardwareauswahl , fragwürdig / Kritik
Josef Federl, 11.07.2017 12:44, 7 Antworten
Auf tuxedocomputers.com steht: "....Aber wir können auch Linux und das so, dass "einfach" alles...