Skip to main content
QR & Barcode

Wie QR-Codes wirklich funktionieren: Ein praktischer Leitfaden

Was die Quadrate bedeuten, was Fehlerkorrektur in Millimetern kostet, warum Grossbuchstaben den Code kleiner machen, und warum gedruckte Codes scheitern.

Von 7 min read
Eine Hand haelt ein Smartphone, dessen Kamera einen QR-Code erfasst, dahinter liegt eine gedruckte Speisekarte auf dem Tisch

QR-Codes wurden von der Spielerei zur Infrastruktur, ohne dass jemand lernen musste, wie sie funktionieren. Das geht gut, bis einer davon aus der Druckerei kommt und nicht scannt.

Die meisten Gründe sind baulich, und alle sind erkennbar, bevor Sie in den Druck gehen.

Was die Quadrate sind

  • Drei grosse Quadrate an den Ecken sind die Suchmuster. Sie sagen einem Scanner, dass hier ein QR-Code ist und wo oben ist.
  • Gestrichelte Linien dazwischen sind die Taktmuster und geben dem Scanner den Rasterabstand.
  • Kleine Quadrate anderswo im Raster sind Ausrichtungsmuster und korrigieren Perspektive und Verzug.
  • Alles Übrige sind Module: die Daten und ihre Fehlerkorrektur.

Bei den Ausrichtungsmustern lohnt Genauigkeit, weil die meisten Beschreibungen hier falsch liegen. Version 1 hat keines. Die Versionen 2 bis 6 haben ein einziges Ausrichtungsquadrat unten rechts, grössere Versionen mehrere über das Raster verteilt. "Ein kleines Quadrat in der vierten Ecke" beschreibt also einen mittelgrossen Code und nicht QR-Codes im Allgemeinen.

Die Versionen laufen von 1 mit 21 mal 21 Modulen bis 40 mit 177 mal 177, je Schritt vier Module breiter.

Die vier Kodierungsmodi

Ein QR-Code kodiert Bytes nicht unabhängig vom Inhalt immer gleich.

ModusAlphabetBit pro Zeichen
Numerisch0-93,33, also 10 Bit je 3 Ziffern
Alphanumerisch0-9 A-Z sowie $ % * + - . / : und Leerzeichen5,5, also 11 Bit je 2 Zeichen
Bytejedes 8-Bit-Byte, meist UTF-88
KanjiJIS X 020813

Generatoren wählen den günstigsten Modus, den der Inhalt erlaubt. "12345" passt numerisch in 17 Bit. "HELLO WORLD" passt alphanumerisch in 61 Bit. "hello world" fällt auf Byte mit 88 Bit, weil Kleinbuchstaben nicht im alphanumerischen Alphabet stehen.

Das Letzte hat eine praktische Folge, die selten genutzt wird.

Zwei echte QR-Codes derselben Adresse. HTTPS://EXAMPLE.COM in Grossbuchstaben ist ein Version-1-Code mit 21 mal 21 Modulen im alphanumerischen Modus, https://example.com in Kleinbuchstaben ein Version-2-Code mit 25 mal 25 Modulen im Byte-Modus
Beide sind scannbar und führen an dieselbe Stelle. Probieren Sie es aus.

Die URL zu rufen spart eine ganze Version. HTTPS://EXAMPLE.COM ergibt Version 1 mit 21 mal 21, https://example.com braucht Version 2 mit 25 mal 25. Dieselben neunzehn Zeichen.

Das ist zulässig, weil Schemata und Hostnamen nicht case-sensitiv sind2. Ab dem ersten Schrägstrich hört das auf: HTTPS://EXAMPLE.COM/PREISE und /preise sind auf den meisten Servern verschiedene Pfade. Also Schema und Host in Grossbuchstaben, den Rest so lassen.

Was Fehlerkorrektur wirklich kostet

Jeder QR-Code trägt Redundanz, damit er Schmutz, Beschädigung und ein Logo in der Mitte übersteht. Es gibt vier Stufen, und Denso Wave gibt Stufe M mit 15 Prozent und Stufe Q mit etwa 25 Prozent Wiederherstellung an3, L darunter und H darüber.

Die interessante Frage ist nicht, was sie wiederherstellen, sondern was sie kosten.

Dieselbe URL mit 89 Zeichen in allen vier Fehlerkorrekturstufen: Stufe L ergibt Version 5 mit 37 Modulen und 18,0 mm Druck, bis hin zu Stufe H mit Version 9, 53 Modulen und 24,4 mm
Gemessen mit derselben Bibliothek, die auch unser Generator verwendet. Geändert wurde nur die Korrekturstufe.

Bei einer URL mit 89 Zeichen führt der Weg von L nach H von einem 37er-Raster zu einem 53er. Bei praxistauglichen 0,4 mm pro Modul sind das 18,0 mm Druckbreite gegen 24,4 mm, Ruhezone eingerechnet. Rund ein Drittel mehr für die vierfache Schadenstoleranz, und das ist bei allem Gedruckten fast immer der bessere Tausch.

Der Logo-Trick in der Mitte zehrt vom selben Budget. Das Logo zerstört Module, und die Fehlerkorrektur baut sie wieder auf. Ein Logo, das mehr Fläche verdeckt, als die Stufe wiederherstellt, scannt nicht. Bleiben Sie unter etwa einem Fünftel der Codefläche und nehmen Sie Stufe H, oder setzen Sie die Marke unter den Code, wo sie nichts kostet.

Warum er nicht scannt

Zu klein gedruckt. Rechnen Sie vom Modul aus, nicht von der Gesamtgrösse. Rund 0,4 mm pro Modul sind eine vernünftige Untergrenze für Handykameras, und Denso Waves eigene Methode ist Zellgrösse mal Module plus Rand1. Ein Code mit 41 Modulen braucht 41 plus 8 Module Breite, also etwa 19,6 mm. Auf Visitenkarten und Weinetiketten geht das schief, weil ein Code, der unter der Schreibtischlampe funktioniert, im Restaurant auf Armlänge versagt.

Die Ruhezone wurde beschnitten. Die Spezifikation verlangt an jeder Seite einen freien Rand von vier Modulen1. Gestalter kürzen ihn, damit der Code ins Layout passt, und ein Code direkt an einer Kante oder einem Bild ist messbar schwerer zu erfassen.

Zu wenig Kontrast. Schwarz auf Weiss ist die Referenz. Dunkelblau auf Hellblau funktioniert meist und versagt zuerst bei schlechtem Licht. Invertierte Codes, helle Module auf dunklem Grund, beherrschen die meisten aktuellen Scanner und nicht alle, also vor einer Auflage von zehntausend testen.

Glänzende oder gewölbte Oberfläche. Reflexe machen die Kamera blind, und eine Flasche oder ein gewölbter Magnet verzerrt das Raster über das hinaus, was die Ausrichtungsmuster korrigieren können. Auf Rundungen schlägt ein physisch kleinerer Code in Stufe H einen grösseren in Stufe L.

Codes, die überleben

  • Stufe M als Minimum für alles Gedruckte. L ist für Bildschirme.
  • URL kurz halten, auf einer eigenen Domain. Weniger Zeichen heisst weniger Module heisst kleinere Mindestgrösse.
  • Einen eigenen Redirector verwenden, damit sich das Ziel ohne Nachdruck ändern lässt. Der Aufkleber ist dauerhaft, die URL nicht.
  • Das Ziel vom Handy über Mobilfunk aufrufen, bevor die Datei rausgeht. Nicht vom Laptop, auf dem der Staging-Host noch in /etc/hosts steht.
  • Auf iOS und Android testen, in der Entfernung und dem Licht, das die Leserin tatsächlich hat.

Unser QR-Code-Generator stellt Fehlerkorrekturstufe und Grösse direkt ein und läuft in der Seite, die kodierten URLs werden also nirgendwohin geladen.

Die Spezialformate

WLAN, als WIFI:S:<ssid>;T:<auth>;P:<password>;;, was eine Handykamera direkt zum Beitreten anbietet. Wirklich die beste Art, ein Gästepasswort weiterzugeben, und unser WLAN-QR-Code-Generator schreibt es für Sie.

vCard, für Kontaktdaten auf einer Veranstaltung. Scanner zeigen die Daten vor dem Übernehmen, wer scannt, sieht also genau das, was Sie kodiert haben.

mailto: und SMSTO:, die Empfänger und Text vorbelegen. Nützlich auf einem Support-Aufkleber, wenn eingehende Nachrichten in vorhersagbarer Form ankommen sollen.

Massenerzeugung, für Inventaretiketten und Tickets: Der Massen-QR-Code-Generator nimmt eine Liste und erzeugt sie in einheitlicher Grösse und Korrekturstufe.

Um zu prüfen, ob eine Charge wirklich dorthin zeigt, wo Sie denken, dekodiert der QR-Code-Leser aus einem Bild im Browser, und das schlägt hundert Aufkleber von Hand.

Nichts an einem QR-Code ist verschlüsselt oder verborgen. Was Sie kodieren, kann jeder lesen, der scannt, und ein Link ist ein Zugangsmittel, sobald das Ziel ihn als solches behandelt. Ein Speisekarten-Code, der auf ein geteiltes Dokument mit linkbasierter Bearbeitung zeigt, verteilt Schreibrechte an alle, die sich hinsetzen.

Von der anderen Seite: Ihr Handy zeigt das dekodierte Ziel in einem Banner und wartet auf einen Tipp. Dieses Banner ist der einzige Moment, in dem Sie bemerken können, dass der Aufkleber über dem echten Code des Parkautomaten irgendwohin führt, das niemand kennt. Scannen ist ungefährlich. Tippen ohne Lesen ist die Stelle, an der das Geld verschwindet.

Gestalten Sie sie so, als überlebten sie die Kampagne, denn gedruckte tun das.

Quellen

Jede Zahl in diesem Artikel lässt sich auf eine Quelle unten zurückführen. Behauptungen ohne Beleg wurden gestrichen, nicht abgeschwächt.

  1. PrimärquelleDenso Wave

    Dass ein QR-Code an allen Seiten des Symbols einen Rand von vier Modulen Breite benötigt, und die Methode, die physische Grösse eines gedruckten Symbols aus der Zellgrösse plus diesem Rand zu berechnen.

  2. PrimärquelleIETF

    Dass Schemata nicht case-sensitiv sind und dass die Host-Unterkomponente der Authority nicht case-sensitiv ist, was den Grossbuchstaben-Trick für Schema und Host zulässig macht, für den Pfad aber nicht.

  3. PrimärquelleDenso Wave

    Die vier Fehlerkorrekturstufen L, M, Q und H sowie die angegebenen Wiederherstellungswerte von 15 Prozent für Stufe M und etwa 25 Prozent für Stufe Q.

Themen

In diesem Artikel erwähnte Tools

  • QR Code Generator - Generate QR codes for URLs, text, email, phone and WiFi.
  • QR Code Reader - Scan and decode QR codes from any image online - upload a photo, screenshot or saved picture and read the QR contents instantly in your browser.
  • WiFi QR Code Generator - Generate a QR code for your WiFi network so guests can connect by scanning.
  • Bulk QR Code Generator - Generate multiple QR codes at once from a list of URLs or text.

Neue Tools per E-Mail

Neue Tools und gelegentlich ein ausführlicher Artikel, etwa einmal im Monat. Kein Spam, deine Adresse bekommt niemand, Abmeldung mit einem Klick.

Ähnliche Artikel

Titelkarte des Artikels. Zwei Kästchenpaare, das obere durch einen einzelnen bernsteinfarbenen Pfeil verbunden, das untere durch Pfeile in beide Richtungen, mit der Zeile: one of these has no way back
Security & Privacy

Hashing vs. Verschlüsselung vs. Kodierung: Was oft verwechselt wird

Drei Umformungen, die alle Kauderwelsch erzeugen und verschiedene Probleme lösen, samt gemessener Kosten der falschen Wahl bei Passwörtern.

Titelkarte des Artikels. Drei graue Quadrate und ein Pfeil führen zu vier schmaleren bernsteinfarbenen Balken, mit der Zeile: 3 bytes become 4 characters
Developer Tools

Base64 erklärt: Was es ist, warum es existiert und wann nicht

Was Base64 mit Ihren Bytes macht, die drei Varianten, die fast alle Decode-Fehler verursachen, und die Stellen, an denen es sich lohnt.

Article title card. Five grey bars in a row above an amber crosshair drawn as four bars and a centre dot, with the line: 25 characters, 18 bytes, 21 commands
Gaming Tools

CS2 Crosshair Share Codes: What Those 25 Characters Hold

Twenty-five characters hold eighteen bytes, twenty-one console commands, and forty-one bits that carry nothing at all. Every field, decoded and measured.