AA_vc-1_123rf-17954301_lucadp.jpg

© lucadp, 123RF

Stark vereinfacht

QR-Codes unter Linux erzeugen und lesen

13.05.2013
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.

Wenn die Kassiererin mehrfach den Salatkopf über den Scanner zieht und dann laut "Tina" schreit, war wieder einmal der aufgeklebte Barcode unleserlich. In der Warteschlange beim Einkauf äußert sich eine Verzögerung eventuell in einem Seufzer, aber bei der Autoproduktion geht Stillstand schnell ins Geld. Das sah das Unternehmen Toyota genauso und ließ daher schon 1994 die Tochterfirma Denso Wave einen neuen Code entwickeln, um Teile im Lager zu erfassen.

Der neue Code sollte mehr Informationen speichern als der klassische Barcode und zudem auch dann noch zu lesen sein, wenn das Etikett schmutzig, zerknittert oder teilweise abgerissen war. Heraus kam der Quick Response Code, kurz QR-Code. Er besteht nicht mehr nur aus Strichen, sondern aus einem Quadrat mit bis zu 177 mal 177 Punkten. In diesen verstecken sich wiederum bis zu 4296 Zeichen, beim Barcode sind es gerade einmal 13.

Dank zahlreicher kostenloser Lese-Apps für Smartphones gewannen QR-Codes in den letzten Jahren zunehmend an Beliebtheit. Egal ob Plakat, Katalog, Zeitschrift, auf Visitenkarten oder im Fernsehen: Fast überall bieten die kleinen Karos Zusatzinformationen oder URLs zu weiterführenden Websites an.

Datenkraken

Möchten Sie einen solchen QR-Code mit Ihrer Adresse für eine Visitenkarte erstellen, könnten Sie sich jetzt auf einen der unzähligen Dienste im Internet stürzen. Die verbinden das Angebot jedoch meist mit Einschränkungen. So erlauben einige nur QR-Codes mit einer bestimmten Größe oder in begrenzten Stückzahlen. Zudem wissen Sie nie sicher, was die Dienste mit Ihren Daten anstellen.

Einige erlauben sich in den Nutzungsbedingungen sogar explizit die Weitergabe und den Verkauf der Daten an Dritte – dann ist zukünftig eintrudelnder Werbemüll quasi vorprogrammiert. Glücklicherweise gibt es für Linux gleich mehrere Werkzeuge, die ohne solche Probleme QR-Codes erstellen.

Auf Kommando!

Am schnellsten kommen Sie mit dem Kommandozeilenprogramm Qrencode [1] zu einem QR-Code. Das installieren Sie bei allen gängigen Distributionen schnell über den Paketmanager nach. Anschließend erstellen Sie mit folgendem Befehl einen QR-Code, der den Text "Hallo Welt!" enthält (Abbildung 1):

$ qrencode -o qrcode.png 'Hallo Welt!'
Abbildung 1: Hier kodiert Qrencode die Zeichenkette Hallo Welt! als QR-Code und speichert diesen in der Datei qrcode.png.

Der erzeugte QR-Code liegt dann in der Datei qrcode.png. Sollte schon eine Datei gleichen Namens existieren, überschreibt das Werkzeug sie ohne Rückfrage. Neben dem PNG-Format erzeugt Qrencode auf Wunsch eine ASCII-Ausgabe (Abbildung 2) oder eine EPS-Grafik:

$ qrencode -t EPS -o qrcode.eps 'Hallo Welt!'
Abbildung 2: Mehr eine Spielerei ist die Ausgabe des QR-Codes als ASCII-Zeichen. Zuständig ist dafür der Parameter -t ASCII. Jeder Punkt entspricht dann einem #.

Um den eigentlichen Code herum erzeugt die Software einen weißen Rand in der Breite eines Punkts innerhalb der Grafik. Das erleichtert später den Programmen beziehungsweise den Smartphones das Dechiffrieren. Bei Bedarf vergrößern oder verkleinern Sie den Rand mit dem Parameter -m, im folgenden Beispiel ist er Rahmen zehn Punkte breit:

$ qrencode -m 10 -o qrcode.png 'Hallo Welt!'

Speichern Sie den QR-Code im PNG-Format, gibt der Parameter -s an, wie viele Pixel groß ein schwarzer QR-Code-Punkt ausfällt. Standardmäßig malt Qrencode jeden schwarzen Punkt mit drei mal drei Pixeln. Mit dem folgenden Befehl erzeugt das Programm einen etwas kleineren QR-Code mit recht breitem Rand:

$ qrencode -s 2 -m10 -o qrcode.png 'Hallo Welt!'

Um den gesamten QR-Code erscheint dabei ein weißer Rand, der genau 20 Bildschirmpixel breit ist (10 QR-Code-Punkte in der Breite, jeder Punkt zwei Pixel groß). Wenn Sie EPS-Bilder erzeugen, steht nur den Parameter -m bereit, -s verschiebt dort den gesamten QR-Code aus dem Bild.

TIPP

Mit dem Parameter -d gibt Qrencode die Auflösung in DPI vor. Diesen Wert schreibt das Programm allerdings nur als Information in das Bild.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 7 Heftseiten

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

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 12/2014: ANONYM & SICHER

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

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

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

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 2 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...