kxing
v1.2.3
Published
ZXing, barcode image processing, porting/rewite library.
Downloads
7
Maintainers
Readme
KXing
KXing ("kogera crossing") is JavaScript porting project of ZXing, barcode image processing library implemented in Java.
Installation
You can install via npm.
$ npm install --save kxing
// or yarn
Usage
Browsers
You can use it within the browser. Found UMD KXing file within node_modules.
<!--Load UMD-->
<script src="./node_modules/kxing/dist/index.js"></script>
<script>
// Load a pixel data
KXing.ImageLoader.load(filePath).then(imageData => {
try {
// Get reader
const reader = KXing.getReader();
// Decode QRCode image.
const result = reader.decode(imageData);
} catch (e) {
console.error("fail to decode.", e);
}
});
</script>
With bundler
If you use bundler, import as ES6 module.
import { getReader, ImageLoader } from "kxing";
// Load a pixel data
ImageLoader.load(filePath).then(imageData => {
try {
// Get reader
const reader = KXing.getReader();
// Decode QRCode image.
const result = reader.decode(imageData);
} catch (e) {
console.error("fail to decode.", e);
}
});
API
reader = getReader()
Getter that KXing Reader instance.
- The instance can be reused.
Important notes
Current version can provide QRCodeReader only.
result = reader.decode(imageData)
Decode a barcode image and return result object.
imageData
is ImageData instance, pixel data of an area of a canvas element. You can get it from CanvasRenderingContext2D.getImageData().decode()
provideresult
that has some values: - text: Decoded string. - rawBytes: Raw bytes encoded by the barcode - numBits: Number of valid bits. - barcodeFormat - timestamp- In case to fail decode, throw Error: (e.g.: NotFoundError, FormatError).
multiReader = getMultiReader()
Getter that KXing MultipleBarcodeReader instance.
- The instance can be reused.
Important notes
Current version can provide MultiQRCodeReader only.
results = multiReader.decodeMultiple(imageData)
Decode a barcode images and return results.