Wie kann man einen QR Code Reader mit JavaScript erstellen? Beispiel und Lösung

Melden
  1. Grundlagen eines QR Code Readers in JavaScript
  2. Wichtige JavaScript-Bibliotheken für das Scannen von QR Codes
  3. Beispiel: QR Code Reader mit der Bibliothek "html5-qrcode"
  4. Zusammenfassung

QR Codes sind heutzutage weit verbreitet und werden häufig verwendet, um Informationen schnell und einfach zu teilen. Wenn Sie eine Webanwendung entwickeln und QR Codes direkt im Browser scannen möchten, können Sie dies mit JavaScript umsetzen. In dieser Antwort erläutere ich, wie ein QR Code Reader mit JavaScript funktioniert und zeige ein einfaches Beispiel.

Grundlagen eines QR Code Readers in JavaScript

Ein QR Code Reader benötigt im Wesentlichen Zugriff auf die Kamera des Geräts, um den QR Code zu erfassen, und eine Software, die den QR Code aus dem Kamerabild erkennt und dekodiert. Moderne Browser unterstützen die WebRTC-API, welche den Zugriff auf Kameras ermöglicht. Zum Auslesen des QR Codes selbst greifen die meisten Implementierungen auf spezialisierte JavaScript-Bibliotheken zurück, da das Dekodieren von QR Codes komplex ist und optische Erkennung beinhaltet.

Wichtige JavaScript-Bibliotheken für das Scannen von QR Codes

Es gibt mehrere populäre JavaScript-Bibliotheken für QR Code Scanning, darunter jsQR, html5-qrcode oder qr-scanner. Diese Bibliotheken erleichtern die Integration, indem sie das Scannen und Dekodieren übernehmen. Sie arbeiten meist mit dem Live-Kamerabild und liefern die ausgelesenen Inhalte als Text zurück.

Beispiel: QR Code Reader mit der Bibliothek "html5-qrcode"

Das folgende Beispiel zeigt, wie man mit der Bibliothek html5-qrcode einen einfachen QR Code Scanner auf einer Webseite einbindet. Die Bibliothek stellt eine einfache Schnittstelle bereit, um die Kamera anzusteuern und QR Codes live zu erkennen.

<!DOCTYPE html><html lang="de"><head> <meta charset="UTF-8"> <title>QR Code Reader Beispiel mit JavaScript</title> <script src="https://unpkg.com/html5-qrcode"></script></head><body><h2&gt>QR Code Scanner</h2><div id="reader" style="width:500px;"></div>

<p>Gescanntes Ergebnis: <span id="result">Noch nichts gescannt</span></p>

<script> const html5QrCode = new Html5Qrcode("reader"); function onScanSuccess(decodedText, decodedResult) { document.getElementById("result").innerText = decodedText; html5QrCode.stop(); } function onScanFailure(error) { // Fehler während des Scanvorgangs werden hier ignoriert oder protokolliert // console.warn(`Scan fehlgeschlagen: ${error}`); } html5QrCode.start( { facingMode: "environment" }, // Rückkamera auf mobilen Geräten { fps: 10, qrbox: 250 }, onScanSuccess, onScanFailure ).catch(err => { console.error("Fehler beim Starten von html5-qrcode: " + err); });</script></body></html>

<p>Gescanntes Ergebnis: <span id="result">Noch nichts gescannt</span></p>

Im Beispiel wird die Bibliothek aus einem CDN eingebunden. Das Html5Qrcode-Objekt wird mit dem ID-Container initialisiert, in dem das Kamerabild angezeigt wird. Die Methode start() startet die Live-Videoaufnahme und den Scanvorgang. Beim erfolgreichen Erkennen eines QR Codes wird der Text im Element mit der ID result angezeigt, und der Scanvorgang beendet.

Zusammenfassung

Ein QR Code Reader in JavaScript lässt sich relativ einfach realisieren, wenn Sie auf verfügbare Bibliotheken zurückgreifen und die Kamera mit der WebRTC-API ansprechen. Die Kernpunkte sind die Anbindung der Kamera, das Bilddecodieren durch eine Bibliothek wie html5-qrcode oder jsQR und das Handling der Scanergebnisse. Dieses Vorgehen bietet eine moderne und plattformunabhängige Möglichkeit, QR Codes direkt im Browser zu scannen, ohne dass native Apps benötigt werden.

0

Kommentare