All Projects → zxing-js → Library

zxing-js / Library

Licence: mit
Multi-format 1D/2D barcode image processing library, usable in JavaScript ecosystem.

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Library

ZxingSupport
A Library based on Zxing, make you easy to develop 1D/2D barcode-scan App.
Stars: ✭ 15 (-98.51%)
Mutual labels:  qrcode, barcode, zxing
Ngx Scanner
Angular (2+) QR code, Barcode, DataMatrix, scanner component using ZXing.
Stars: ✭ 420 (-58.25%)
Mutual labels:  hacktoberfest, zxing, barcode
Qzxing
Qt/QML wrapper library for the ZXing library. 1D/2D barcode image processing library
Stars: ✭ 401 (-60.14%)
Mutual labels:  zxing, qrcode, barcode
Scannermapp
A QR-code and barcode acanner app built in Delphi using ZXing and TFrameStand
Stars: ✭ 65 (-93.54%)
Mutual labels:  zxing, qrcode, barcode
Zxinglite
🔥 ZXing的精简版,优化扫码和生成二维码/条形码,内置闪光灯等功能。扫描风格支持:微信的线条样式,支付宝的网格样式。几句代码轻松拥有扫码功能 ,ZXingLite让集成更简单。(扫码识别速度快如微信)
Stars: ✭ 2,117 (+110.44%)
Mutual labels:  zxing, qrcode, barcode
Zxingview
👍 Lowest cost integration and most convenient customization zxing on android
Stars: ✭ 23 (-97.71%)
Mutual labels:  zxing, qrcode, barcode
Efqrcode
A better way to operate QR Code in Swift, support iOS, macOS, watchOS and tvOS.
Stars: ✭ 4,121 (+309.64%)
Mutual labels:  hacktoberfest, qrcode, barcode
Nbzxing
🔥 2020年最好用的开源扫码,全方位优化,强烈推荐!! 支持多种常规zxing无法扫出的码,用就完了!! 🔥
Stars: ✭ 184 (-81.71%)
Mutual labels:  zxing, qrcode, barcode
Czxing
C++ port of ZXing and ZBar for Android.
Stars: ✭ 854 (-15.11%)
Mutual labels:  zxing, qrcode, barcode
Stegastamp
Invisible Hyperlinks in Physical Photographs
Stars: ✭ 306 (-69.58%)
Mutual labels:  qrcode, barcode
Roundcode
Custom rounded QR code with lots of customization.
Stars: ✭ 267 (-73.46%)
Mutual labels:  qrcode, barcode
Qrcodescanner
An optimized qr code scan tool forked from zxing.
Stars: ✭ 427 (-57.55%)
Mutual labels:  zxing, qrcode
Swiftscan
A barcode and qr code scanner( 二维码/条形码扫描、生成,仿微信、支付宝)
Stars: ✭ 293 (-70.87%)
Mutual labels:  qrcode, barcode
Zxinggenerator
花式二维码生成,提供了6种样式
Stars: ✭ 618 (-38.57%)
Mutual labels:  zxing, qrcode
garden.zbarcam
Migrated to https://github.com/kivy-garden/zbarcam
Stars: ✭ 49 (-95.13%)
Mutual labels:  qrcode, barcode
Code Scanner
Code scanner library for Android, based on ZXing
Stars: ✭ 543 (-46.02%)
Mutual labels:  zxing, barcode
Tesseract Ocr Scanner
基于Tesseract-OCR实现自动扫描识别手机号
Stars: ✭ 622 (-38.17%)
Mutual labels:  zxing, qrcode
Quick Media
media(audio/image/qrcode/markdown/html/svg) support web service (多媒体编辑服务, 酷炫二维码, 音频, 图片, svg, markdown, html渲染服务支持)
Stars: ✭ 612 (-39.17%)
Mutual labels:  zxing, qrcode
Td Angular Barcode
Barcode Generator for Angular 1 (Supports 90+ barcode types: qr, aztec, code128, ean, isbn, interleaved2of5, ...)
Stars: ✭ 22 (-97.81%)
Mutual labels:  qrcode, barcode
Spring Qrcode Example
Demonstrates some of the capabilities of the Spring Boot framework through a small, simple example.
Stars: ✭ 23 (-97.71%)
Mutual labels:  zxing, qrcode

ZXing

Runs on your favorite ECMAScript ecosystem

If it doesn't, we gonna make it.

What is ZXing?

ZXing ("zebra crossing") is an open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages.

Supported Formats

See Projects and Milestones for what is currently done and what's planned next. 👀

1D product 1D industrial 2D
UPC-A Code 39 QR Code
UPC-E Code 93 Data Matrix
EAN-8 Code 128 Aztec
EAN-13 Codabar PDF 417
ITF MaxiCode
RSS-14
RSS-Expanded *

* In progress, may have open PR.

Status

Build Status Dependencies Greenkeeper badge

NPM version npm Contributors Commits to deploy

Codacy Badge Maintainability Test Coverage BCH compliance

Demo

See Live Preview in browser.

Note: All the examples are using ES6, be sure is supported in your browser or modify as needed, Chrome recommended.

Installation

npm i @zxing/library --save

or

yarn add @zxing/library

Limitations

On iOS-Devices with iOS < 14.3 camera access works only in native Safari and not in other Browsers (Chrome,...) or Apps that use an UIWebView or WKWebView. This is not a restriction of this library but of the limited WebRTC support by Apple. The behavior might change in iOS 11.3 (Apr 2018?, not tested) as stated here

iOS 14.3 (released in december 2020) now supports WebRTC in 3rd party browsers as well 🎉

Browser Support

The browser layer is using the MediaDevices web API which is not supported by older browsers.

You can use external polyfills like WebRTC adapter to increase browser compatibility.

Also, note that the library is using the TypedArray (Int32Array, Uint8ClampedArray, etc.) which are not available in older browsers (e.g. Android 4 default browser).

You can use core-js to add support to these browsers.

In the PDF 417 decoder recent addition, the library now makes use of the new BigInt type, which is not supported by all browsers as well. There's no way to polyfill that and ponyfill libraries are way to big, but even if PDF 417 decoding relies on BigInt the rest of the library shall work ok in browsers that doesn't support it.

There's no polyfills for BigInt in the way it's coded in here.

Usage

// use with commonJS
const { MultiFormatReader, BarcodeFormat } = require('@zxing/library');
// or with ES6 modules
import { MultiFormatReader, BarcodeFormat } from '@zxing/library';

const hints = new Map();
const formats = [BarcodeFormat.QR_CODE, BarcodeFormat.DATA_MATRIX/*, ...*/];

hints.set(DecodeHintType.POSSIBLE_FORMATS, formats);

const reader = new MultiFormatReader();

reader.setHints(hints);

const luminanceSource = new RGBLuminanceSource(imgByteArray, imgWidth, imgHeight);
const binaryBitmap = new BinaryBitmap(new HybridBinarizer(luminanceSource));

reader.decode(binaryBitmap);

Contributing

See Contributing Guide for information regarding porting approach and reasoning behind some of the approaches taken.

Contributors

Special thanks to all the contributors who have contributed for this project. We heartly thankful to you all.

And a special thanks to @aleris who created the project itself and made available the initial QR code port.


Bless

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].