Tapirscan is a barcode scanner designed for reliable detection, including barcodes rotated at different angles. This interactive demo compares its four scanning effort levels—TS-Low, TS-Med, TS-High and TS-VHigh—with the independent ZXing and ZBar barcode readers. More scanners also offers Quagga2 (linear barcodes), ZXing-JS (with optional extra search passes), jsQR (QR codes only, one per scan) and the browser’s native BarcodeDetector where supported.
Each selected scanner analyzes the same image pixels. Colored outlines mark detected barcode locations; nearby labels show the decoded values and the scanners that found them. Scanner buttons and result cards report decoded values and processing times. The four Tapirscan levels offer different trade-offs between scanning effort and speed. This demo lets you explore results on individual images; it is not a comprehensive benchmark.
Choose a demo image, load your own photo, or use a webcam or phone camera. Rotate and zoom images, or double-click or double-tap to move the view center. Fullscreen provides a larger view, and Adjust opens rotation and zoom controls for photos and frozen frames. Pause / freeze turns a live camera frame into an image you can explore.
The Detect selector offers EAN-13, Retail, Common and All barcode formats. Readers scan the formats they support. Read up to controls the input resolution. Save image downloads the scanner input as a PNG with its crop, zoom and rotation applied, without the result overlays; in live mode it saves the latest analyzed frame.
Images and camera frames are processed locally in your browser and are not uploaded. Learn more or use Tapirscan in your own project on GitHub.
Packages: npm (JavaScript / TypeScript) · PyPI (Python) · crates.io (Rust).