zxing2

Creator: coderz1093

Last updated:

0 purchases

zxing2 Image
zxing2 Images
Add to Cart

Description:

zxing2

zxing-dart #
ZXing ("zebra crossing") is an open-source, multi-format 1D/2D barcode image processing library.
This package is a pure Dart port of the original Java library.
For now, it only supports QR-Code (encoding and decoding). New format can easily be added if this port proves useful.




Getting started #
QR Code #
Decoding
The QRCodeReader class takes a list of bytes and returns the decoded barcode.
import 'dart:io';
import 'package:image/image.dart' as img;
import 'package:zxing2/qrcode.dart';

void main() {
var image = img.decodePng(File('tool/example.png').readAsBytesSync())!;

LuminanceSource source = RGBLuminanceSource(
image.width,
image.height,
image
.convert(numChannels: 4)
.getBytes(order: img.ChannelOrder.abgr)
.buffer
.asInt32List());
var bitmap = BinaryBitmap(GlobalHistogramBinarizer(source));

var reader = QRCodeReader();
var result = reader.decode(bitmap);
print(result.text);
}
copied to clipboard
Encoding
The QRCodeReader class takes a list of bytes and returns the decoded barcode.
import 'dart:io';
import 'package:image/image.dart' as img;
import 'package:zxing2/qrcode.dart';

void main() {
var qrcode = Encoder.encode('ABCDEF', ErrorCorrectionLevel.h);
var matrix = qrcode.matrix!;
var scale = 4;

var image = img.Image(
width: matrix.width * scale,
height: matrix.height * scale,
numChannels: 4);
for (var x = 0; x < matrix.width; x++) {
for (var y = 0; y < matrix.height; y++) {
if (matrix.get(x, y) == 1) {
img.fillRect(image,
x1: x * scale,
y1: y * scale,
x2: x * scale + scale,
y2: y * scale + scale,
color: img.ColorRgba8(0, 0, 0, 0xFF));
}
}
}
var pngBytes = img.encodePng(image);
File('tool/examples/encoded.png').writeAsBytes(pngBytes);
}
copied to clipboard
Flutter #
The example folder contains a full example that uses the official camera plugin connected to this
package to decode barcode from the bytes stream.

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.