§

Bild ablegen oder zum Auswählen klicken

Bild ablegen oder zum Auswählen klicken PNG, JPG, GIF, BMP, WebP — oder aus der Zwischenablage einfügen
§

Mit Kamera scannen

Kamerazugriff wird nur angefragt, wenn dieser Schalter aktiv ist. Es wird nichts hochgeladen oder aufgezeichnet.
§

Dekodierter Inhalt

Im deutschsprachigen Raum begegnen QR-Codes überall: auf Speisekarten in Restaurants und Cafés, auf Eintrittskarten für Events, auf Rezepten und Beipackzetteln, auf Produktetiketten im Handel sowie auf Plakaten und Infotafeln im öffentlichen Raum. Wer einen QR-Code am Desktop-Browser öffnet, möchte oft prüfen, was dahintersteckt — bevor man auf den Link klickt, das WLAN-Passwort aus einer Router-Konfigurationsseite ausliest oder eine vCard-Visitenkarte in die Kontakte überträgt. Dieser Leser verarbeitet alle gängigen Formate: URL, WLAN-Verbindungsstrings, vCard, MeCard, Klartext, E-Mail, SMS, Geokoordinaten. Bildbytes und dekodierter Inhalt bleiben in Ihrem Tab.

Was ist ein QR-Code-Leser?

Ein QR-Code ist ein zweidimensionaler Matrix-Barcode, der nach ISO/IEC 18004 definiert ist. Er kodiert Text, URLs, Kontaktkarten, WLAN-Zugangsdaten und andere kurze Nutzdaten als Gitter schwarzer und weißer quadratischer Module, zusammen mit Reed-Solomon-Fehlerkorrektur-Daten, damit das Symbol auch bei teilweiser Beschädigung oder einem Logo-Overlay noch dekodiert werden kann. Ein QR-Code-Leser kehrt diesen Prozess um: Er nimmt das Bild eines QR-Symbols und stellt den ursprünglichen Nutzlast-String wieder her. Dieser Leser führt die Dekodierungs-Pipeline direkt in Ihrem Browser mithilfe der Open-Source-Bibliothek jsQR aus (ca. 130 KB, MIT-Lizenz). Das Bild, das Sie ablegen, einfügen oder mit der Kamera scannen, verlässt den Tab nie. Es gibt keinen Upload-Schritt.

Wie funktioniert die QR-Dekodierung?

Die Dekodierung läuft vollständig auf Ihrem Gerät. Jedes Bild durchläuft eine feste Pipeline, bevor der Nutzlast-Text zurückgegeben wird:

  1. Die Bilddatei (PNG, JPG, WebP oder ein Kamera-Frame) wird auf ein offscreen-HTML-<canvas>-Element gezeichnet. Die Canvas-API gibt rohe Pixeldaten als RGBA-Byte-Array zurück.
  2. Die jsQR-Bibliothek wandelt das Pixel-Array in ein Graustufen-Bitmap um und sucht nach den drei charakteristischen Finder-Muster-Quadraten in den Ecken eines QR-Symbols.
  3. Sobald die Finder-Muster gefunden sind, berechnet der Decoder die perspektivische Transformation und extrahiert das vollständige Modul-Gitter, wobei jede Zelle als binäre 0 oder 1 gelesen wird.
  4. Das Modul-Gitter wird gemäß der QR-Spezifikation geparst: Format- und Versionsinformationen werden zuerst gelesen, dann werden die Datenmodule de-interleaved und Reed-Solomon-Fehlerkorrektur wird angewendet.
  5. Die korrigierten Daten-Codewords werden entsprechend dem Segment-Modus dekodiert (numerisch, alphanumerisch, Byte oder Kanji) und ergeben den ursprünglichen Nutzlast-String.
  6. Dieses Tool untersucht die Nutzlast dann mit regulären Ausdrücken, um den Inhaltstyp zu identifizieren (URL, WLAN-Zugangsdaten, vCard usw.) und zeigt das Ergebnis mit einer passenden Aktionsschaltfläche an.

Warum einen browserbasierten QR-Leser verwenden?

  • Die Bildbytes verlassen Ihr Gerät nie. Fügen Sie einen QR-Code ein, der ein WLAN-Passwort, eine interne Staging-URL oder eine vCard mit persönlicher Telefonnummer verbirgt, und dieser Inhalt bleibt auf Ihrem Laptop. Andere QR-Leser führen die Dekodierung auf einem Remote-Server aus und fordern Sie auf, das Bild zuerst hochzuladen — dieser nicht.
  • Sobald die Seite geladen ist, funktioniert die Dekodierung offline. Die jsQR-Bibliothek lebt in Ihrem Tab. Sie können WLAN trennen, ein QR-Bild in die Seite ablegen und trotzdem den Inhalt zurückbekommen — nützlich in Flugzeugen, in Kellern und überall, wo das Firmennetzwerk Drittanbieter-Scanner blockiert.
  • Wenn Ihr Desktop oder Laptop eine Webcam hat, können Sie sie auf einen gedruckten QR-Code richten und ihn lesen, ohne eine App zu installieren oder ein Telefon zu entsperren. Der Kamera-Stream bleibt im Browser und stoppt sofort, wenn ein Code dekodiert wurde.
  • Der Leser erkennt URLs, WLAN-Verbindungsstrings, vCard, MeCard, mailto, SMS und Geo-Nutzlasten und zeigt eine passende Aktionsschaltfläche. URL öffnen, WLAN-Passwort kopieren, Kontaktkarte speichern — je nachdem, was der QR tatsächlich enthält.

Häufige Verwendungszwecke für einen QR-Code-Leser

Immer wenn Sie sehen möchten, was ein QR-Code tatsächlich enthält, ohne ein Telefon darauf zu richten:

  • Debugging von selbst generierten Codes. Den QR einfügen, den Ihre App produziert hat (oder einen Screenshot vom QR-Code-Generator nebenan machen) und bestätigen, dass die kodierte URL oder Nutzlast dem Gewollten entspricht, bevor er an Druckereien, Verpackungen oder Plakate gesendet wird.
  • WLAN-Zugangsdaten wiederherstellen. Den WLAN-QR von einer Router-Konfigurationsseite, einer Hotelwillkommenskarte oder einem Ferienwohnungs-Listing-Foto scannen — der Leser gibt SSID, Sicherheitstyp und Passwort als Klartext zurück, der auf ein anderes Gerät kopiert werden kann.
  • Prüfung und Barrierefreiheit. QR-Codes auf gescannten Dokumenten, Produktetiketten, Konferenzausweisen oder Screenshots aus sozialen Medien dekodieren, um deren Inhalt in eine Tabellenkalkulation, ein Prüfprotokoll oder assistive Software zu extrahieren — praktisch, wenn die Ziel-URL tatsächlich der Anspruch unter Prüfung ist.

Wie sieht das Dekodieren eines echten QR-Codes aus?

Nehmen Sie einen WLAN-QR-Code auf dem Schaufenster eines Cafés. Hinter dem Symbol folgt die rohe Nutzlast dem WIFI:-URI-Schema: WIFI:S:CafeGuest;T:WPA;P:espresso2026;H:false;;. Das Symbol fotografieren, das Bild in die Upload-Zone oben ablegen, und die Pipeline startet: Das Canvas liest die Pixel, jsQR findet die drei Ecken-Finder-Muster, die perspektivische Transformation begradigt das Gitter, Reed-Solomon repariert Blendungs- oder Kompressionsschäden, und das Byte-Modus-Segment ergibt den URI-String. Der Leser erkennt dann das Präfix WIFI:, kennzeichnet den Typ als WLAN, parst den Netzwerknamen als CafeGuest, den Sicherheitstyp als WPA und das Passwort als espresso2026. Eine Kopieren-Schaltfläche legt das Passwort in die Zwischenablage. Bei einem einfachen URL-QR mit https://tools.ultim8soft.com gibt dieselbe Pipeline das URL-Typ-Badge und eine Öffnen-Schaltfläche zurück, die in einem neuen Tab zur Zieladresse navigiert.

Dieser QR-Code-Leser wurde für eine Aufgabe gebaut: Zeigen Sie genau, was ein QR-Code verschlüsselt, in Ihrem Browser, ohne Server dazwischen. Ein Bild ablegen, aus der Zwischenablage einfügen oder die Webcam laufen lassen, und der dekodierte Inhalt plus sein Typ erscheinen in unter einer Sekunde auf dem Bildschirm. Die Bildbytes werden nicht hochgeladen. Die Kamera-Frames werden nicht aufgezeichnet. Die dekodierte Nutzlast passiert keine fremden Server auf dem Rückweg zu Ihnen. Kombinieren Sie es mit dem QR-Code-Generator nebenan, wenn Sie eine Hin- und Rückbestätigung brauchen, dass das Kodierte dem entspricht, was andere sehen.

Wird das Bild auf einen Server hochgeladen?

Nein. Das Bild wird auf ein HTML-Canvas im Arbeitsspeicher gezeichnet und vollständig durch clientseitiges JavaScript in Ihrem Tab dekodiert. Kein einziges Pixel Ihres Bildes wird jemals an einen Server gesendet, protokolliert oder gespeichert. Sie können dies bestätigen, indem Sie DevTools öffnen und das Netzwerk-Panel beobachten, während Sie ein Bild ablegen: kein XHR, kein Fetch, kein Analytics-Beacon ist mit dem Dateiinhalt verknüpft.

Wie funktioniert das Kamera-Scannen?

Wenn Sie den Kamera-Modus aktivieren, fragt der Browser nach Erlaubnis zum Zugriff auf Ihre Gerätekamera über die Standard-getUserMedia-API. Video-Frames werden in bis zu 640×480 Auflösung auf ein offscreen-Canvas erfasst und jsQR zur Dekodierung übergeben. Jeder Frame wird verworfen, sobald der nächste eintrifft, und der Kamera-Stream wird beim ersten erfolgreichen Dekodieren gestoppt. Es werden keine Frames aufgezeichnet, keine Frames übertragen, und der Berechtigungsdialog erscheint nur beim Aktivieren des Schalters — nicht beim Laden der Seite.

Warum wird mancher QR-Inhalt automatisch als WLAN oder vCard erkannt?

QR-Nutzlasten für WLAN-Zugangsdaten folgen dem Format WIFI:S:ssid;T:typ;P:passwort;;, und vCards beginnen mit BEGIN:VCARD. Dieser Leser erkennt diese Muster zusammen mit anderen Standard-Präfixen (mailto:, geo:, smsto:, MECARD:, https://) und kennzeichnet den Inhaltstyp automatisch, damit die Aktionsschaltfläche dem tatsächlichen Verwendungszweck der Nutzlast entspricht.

Warum wurde mein QR-Code nicht gescannt?

Häufige Ursachen: Das Bild ist zu klein oder hat eine zu geringe Auflösung (~100×100 px ist die Untergrenze, 300×300+ scannt zuverlässig), das Symbol hat starke Beschädigungen oder ist durch ein Logo ohne ausreichende Fehlerkorrektur teilweise verdeckt, die Ruhezone (der leere Rand um die Module) fehlt oder ist abgeschnitten, oder der Kontrast zwischen dunklen und hellen Modulen ist zu gering. Im Kamera-Modus die Beleuchtung verbessern oder den Code näher an die Kamera halten — jsQR muss einzelne Module klar auflösen, um die Finder-Muster zu erkennen.