LaTeX Extra > LaTeX Pakete > Codes in LaTeX


Bei einigen Dokumenten kann es notwendig sein, dass ein Code zur Identifizierung oder zum Verweis auf weitere Informationen eingefügt wird.

Typische Codes, die zur Identifizierung verwendet werden, sind der EAN Code und die ISBN. Letztere wird für die Identifizierung von Büchern genutzt. Wobei die 13-stellige ISBN, die nach dem 01. Januar 2007 vergeben worden sind, mit der jeweiligen EAN übereinstimmen.

QR Codes werden in LaTeX Dokumenten oft verwendet, um auf Beispiele zu verweisen.

EAN und ISBN

Das ean13isbn Paket (2008-06-19) ermöglicht neben dem Satz von EAN Code auch das Setzen der aktuellen ISBN Variante.[1]

ean13isbn einbinden

Das Paket wird mit \usepackage[Optionen]{ean13isbn} eingebunden und verfügt über die folgenden zwei Optionen. Zum einen kann eine ISBN in der Form ISBN=978-.-....-....-. als Option an das Paket übergeben werden. Diese wird dann bei dem entsprechenden Befehl als default Wert verwendetet. Zum anderen kann die Größe des darzustellenden Codes per Option verändert werden. Dazu stehen insgesamt 27 Größenvarianten zur Verfügung. (Siehe Table 1: EAN13 size options in [1])

\EAN, \ISBN und \EANisbn

Das Paket ean13isbn enthält die folgenden gezeigten drei Befehle.

Mit dem Befehl \EANZahlencode wird der Barcode erstellt. Die Größe des Barcodes kann nur über die Paketoption verändert werden.

Eingabe:
\documentclass{article}
...
\usepackage[ISBN=978-3-7418-8183-1,SC3]{ean13isbn}
...
\begin{document}
...
\EAN 978-3-7418-8183-1 
...
\end{document}
Ausgabe.

Der Befehl \ISBN hat als Ausgabe die in der Option gesetzte ISBN.

Eingabe:
\documentclass{article}
...
\usepackage[ISBN=978-3-7418-8183-1,SC3]{ean13isbn}
...
\begin{document}
...
\ISBN
...
\end{document}
Ausgabe:

Der Befehl \EANisbn gibt die als Option gesetzte ISBN und den dazugehörigen EAN Barcode aus. Der Befehl verfügt, auch über die Möglichkeit eine andere ISBN zu setzen und die Größe der Ausgabe zu verändern.

Eingabe:
\documentclass{article}
...
\usepackage[ISBN=978-3-7418-8183-1,SC3]{ean13isbn}
...
\begin{document}
...
\EANisbn
...
\end{document}
Ausgabe:

\documentclass{article}
...
\usepackage[ISBN=978-3-7418-8183-1,SC3]{ean13isbn}
...
\begin{document}
...
\EANisbn[SC5, ISBN=978-3-662-48937-6]
...
\end{document}
Ausgabe:

QR Code

Das qrcode Paket (v1.51 QR code generation) ermöglicht es innerhalb von LaTeX Dokumenten QR Codes einzufügen.[2] Es gibt bereits ein Paket pst-barcode das dies auch ermöglicht aber dadurch das es auf pstricks basiert ist es relativ umständlich, bei der Verwendung von pdflatex als Kompilier, einzusetzen.

qrcode einbinden

Das Paket wird mit \usepackage{qrcode} eingebunden. Es bindet zusätzlich die Pakete xcolor und xkeyval ein. Aber nicht das hyperref Paket.

Optionen

Die Optionen sind von draft und final abgesehen auf die Funktionalität der Links bezogen. Wobei die dadurch möglichen Einstellungen für Links eher für den Satz von Dokumentationen zu diesem Themengebiet gedacht sind. Für den normalen Einsatz sind die Optionen für den Befehl interessanter. Die draft Option sorgt dafür, dass die QR Codes nicht berechnet werden, da die Berechnung abhängig von der Anzahl der QR Codes und des verwendeten Rechners wahrnehmbar lange dauern kann. Die Option final ist der Standardwert und lässt die Berechnung der QR Codes zu.

qrcode

Das Paket verfügt nur über einen Befehl \qrcode[Optionen]{URL} zum Setzen von QR Codes.

Mittels des Befehls \qrset{Einstellungen} können Einstellungen wie height (Höhe), level (Fehlerkorrektur), version (Modulanzahl) tight oder padding (ohne oder mit Abstand), link oder nolink (mit oder ohne Link, wenn das hyperref Paket mit eingebunden wurde) gesetzt werden.

Da bei level und version im default bereits die optimalen Werte ermittelt, und automatisch gesetzt werden sollten diese nur in Ausnahmen gesetzt und verändert werden.

Die Höhe kann über \qrset{height=Maß} für alle nachfolgenden QR Codes gesetzt werden. Wobei es durch die Option des \qrcode Befehls immer noch möglich bleibt einen QR Code, unabhängig von der in qrset gesetzten Einstellung, eine bestimmte Höhe mit \qrcode[height=Xcm]{URL} zu geben.

Per default wird kein Abstand (tight) um die QR Codes eingefügt. Die Einstellung padding sorgt für einen Abstand um den QR Code. Insbesondere dann sinnvoll, wenn zwei oder mehr neben einander stehen. Kann auch einzeln gesetzt werden.

Mit link beziehungsweise nolink kann die Linkfunktion, wenn das hyperref Paket eingebunden wurde, mit nolink deaktiviert werden. Und für den Fall, dass die entsprechende Paketoption gesetzt wurde, mit link aktiviert werden. Kann auch bei einzelnen \qrcode Befehlen gesetzt werden. Der Befehl \qrcode* ist eine abkürzende Schreibweise für den Befehl \qrcode{nolink].

Beispiele

Der Einfluss des Paketes hyperref auf die Ausgabe der QR Codes.
Eingabe:
\documentclass{article}
\usepackage{qrcode}
\begin{document}
\qrset{height=3cm}
\qrcode{https://www.namsu.de}
\end{document}
Ausgabe:

Eingabe:
\documentclass{article}
\usepackage{hyperref}
\usepackage{qrcode}
\begin{document}
\qrset{height=3cm}
\qrcode{https://www.namsu.de}
\end{document}
Ausgabe:

Eingabe:
\documentclass{article}
\usepackage{hyperref}
\usepackage{qrcode}
\begin{document}
\qrset{height=3cm}
\qrcode[nolink]{https://www.namsu.de}
\end{document}
Ausgabe:


Den Effekt von padding erkennt man leicht, wenn die Linkfunktion aktiv ist.
Eingabe:
\documentclass{article}
\usepackage{hyperref}
\usepackage{qrcode}
\begin{document}
\qrset{height=3cm}
\qrcode[padding]{https://www.namsu.de}
\end{document}
Ausgabe:


Es können auch mehrere Optionen gesetzt werden.
Eingabe:
\documentclass{article}
\usepackage{hyperref}
\usepackage{qrcode}
\begin{document}
\qrset{height=3cm}
\qrcode[height=1cm,nolink]{https://www.namsu.de}
\end{document}
Ausgabe:

QR Code im Seitenrand

Das Paket hvqrurl ermöglicht das Setzen von QR Codes im Seitenrand.[3]

hvqrurl einbinden

Das Paket wird mit \usepackage{hvqrurl} eingebunden und bindet zusätzlich die Pakete url, xcolor, marginnote, qrcode und xkeyval ein. Es verfügt zur Zeit über keine Optionen.

Darstellung

Wie beim Paket qrcode gibt es auch hier die Möglichkeit die Gestaltung über einen Befehl \hvqrset{key1 = value, ..., keyn = value} für alle QR Codes festzulegen.

keysWerte
qrlink nolink oder link
qrcolorFarbe
qradjust Anpassen (pt)
qrheightHöhe
qrlevelLevel

Befehle

Der Befehl \kvqrurl[Optionen]{URL} erzeugt neben dem QR Code im Seitenrand auch einen passenden Link im Text.

Eingabe:
\documentclass{article}
\usepackage{hyperref}
\usepackage{hvqrurl}
\begin{document}
Hier kann man das xcolor Paket runterladen \hvqrurl[qrcolor=red!40!white]{http://mirror.ctan.org/pkg/xcolor} und auf der Hauptseite gibt es noch viel mehr.
\end{document}
Ausgabe:


Der Befehl \kvqrurl*[Optionen]{URL} hingegen erzeugt nur ein QR Code im Seitenrand.

Eingabe:
\documentclass{article}
\usepackage{hyperref}
\usepackage{hvqrurl}
\begin{document}
Hier kann man das xcolor Paket runterladen \hvqrurl*[qrcolor=red!40!white]{http://mirror.ctan.org/pkg/xcolor} und auf der Hauptseite gibt es noch viel mehr.
\end{document}
Ausgabe:

Literatur

[1] Zdeněk Wagner ISBN with EAN13 barcodes, Package date: 2008/06/20
https://ctan.org/pkg/ean13isbn

[2] Anders Hendrickson, The qrcode package: Quick Response code generation in LaTeX, 2015/01/08
https://ctan.org/pkg/qrcode

[3] Herbert Voß, Package hvqrurl Creating a QR-code of an URL in the margin, ver 0.01a, 2019/12/01
https://ctan.org/pkg/hvqrurl