Reading and Decoding QR Codes from Images
What this reader does
A QR code packs text into a grid of black and white squares. This reader takes an image that contains such a grid, redraws it onto a canvas, and runs the jsQR decoder over the pixels to pull the original text back out. You hand it a PNG, JPG, GIF, BMP, or WebP file — dragged in or picked from disk — and it returns whatever was encoded.
Decoding is only half the work. Once the raw text is recovered, smart format detection inspects it and recognizes common payloads: WiFi credentials, vCard contact cards, web links, and cryptocurrency addresses. Each is laid out in a readable panel, so a WiFi block shows the network name and password, while a contact shows name, company, phone, and email separately.
When to reach for it
It helps when you already have the QR as a picture rather than something in front of a camera — a screenshot of a ticket, a code saved from a chat, a poster photographed on your phone, or a figure lifted from a PDF. Anything you can turn into an image file, the reader can decode.
It is also useful for checking what a code actually contains before you trust it. Seeing the decoded URL in full, rather than blindly following it, tells you where a link really points.
Example: a WiFi code
Say a café prints a WiFi QR on its menu and you have a photo of it. Drop that photo in, and the encoded string — something like WIFI:S:CafeGuest;T:WPA;P:latte123;; — is decoded and recognized as a network. The panel then separates it into the network name CafeGuest, the WPA security type, and the password latte123, with a single action to copy the credentials. A vCard code works the same way, offering the parsed contact as a downloadable .vcf file.
Notes and limits
This is an image-based reader: it works from a still picture you upload, not a live camera feed, so any QR you can screenshot or save will do. Files up to 10 MB are accepted, and large images are downscaled automatically to keep decoding fast. Sharpness matters more than size — a crisp, high-contrast code with a little quiet space around it reads far more reliably than a blurry or angled one. The tool reads codes; it does not create them, so pair it with a QR generator when you need to produce one.