Barcode
Scan capability overview
Anyline has leveraged our extensive computer vision and machine-learning expertise to develop a best-in-class 1D and 2D barcode symbology SDK. With the ability to tolerate real-world variations like reflections, warping due to cylindrical or curved surfaces, low contrast codes, damaged or obscured codes, and inverted polarity codes, customers can realize faster throughput and more accurate data quality in their front-line barcode scanning applications.
Single barcode scanning
Instantly detect and decode a single barcode with high accuracy. Optimized for real-time scanning across various barcode types, even in challenging conditions.
To enable the newly introduced fastProcessMode
, add "fastProcessMode": true
to your ScanViewConfig (under barcodeConfig
). This will use our latest performance improvements introduced with Barcode:AI
|
{
"pluginConfig": {
"id": "MyBarcodePlugin",
"barcodeConfig": {
"multiBarcode": false,
"fastProcessMode": true
},
"cancelOnResult": true
}
}
For details, refer to the Plugin Config JSON schema.
Multiple barcode scanning
Capture multiple barcodes in a single scan session, improving efficiency for inventory tracking, logistics, and batch processing use cases.
To enable the newly introduced fastProcessMode
, add "fastProcessMode": true
to your ScanViewConfig (under barcodeConfig
). This will use our latest performance improvements introduced with Barcode:AI
|
{
"pluginConfig": {
"id": "MyBarcodePlugin",
"barcodeConfig": {
"multiBarcode": true,
"fastProcessMode": true
},
"cancelOnResult": true
}
}
For details, refer to the Plugin Config JSON schema.
Filtering barcode scans - consecutiveEqualResultFilter
With version 55.0.0
consecutiveEqualResultFilter has been introduced. This option allows to finetune the handling results of the same content when scanning continuously. If the option is set to -1
, equal results will not be reported again until the scanning process is stopped. Setting this option to 0
will report equal results every time it is found. Setting this option to greater than 0
indicates how much time (milliseconds) must pass by not detecting the result before it will be detected again.
{
"pluginConfig": {
"id": "MyBarcodePlugin",
"barcodeConfig": {
"multiBarcode": true,
"fastProcessMode": true,
"consecutiveEqualResultFilter": -1
},
"cancelOnResult": true
}
}
For details, refer to the Plugin Config JSON schema.
Full screen scanning
To enable fullscreen scanning for your plugins, remove the cutoutConfig node from the config JSON. This setup enables object detection anywhere within the scan view, without displaying a cutout.
{
"viewPluginConfig": {
"pluginConfig": {
"id": "barcode_fullframe",
"barcodeConfig": {
"barcodeFormats": [ "ALL" ]
},
"cancelOnResult": true
},
"scanFeedbackConfig": {
"style": "rect",
"strokeWidth": 1,
"strokeColor": "#0099FF",
"fillColor": "#330099FF",
"beepOnResult": false,
"vibrateOnResult": false,
"blinkAnimationOnResult": false
}
}
}
This will allow objects being scanned to be detected wherever they are visible in the scan view. No cutout will be displayed.
In code, use the ALCutoutConfig’s defaultCutoutConfig
method or pass a null value to the ALScanViewPluginConfig initializer.
While full frame scanning could technically be used on any Anyline plugin, this is only tested to work well with barcodes. Alternatively, you can simulate the clean look without the cutout by setting the strokeWidth and outerAlpha to 0 and adjusting the cutout region to fill as much of the scan view frame as possible.
|
4K resolution and Tele lens support
It is possible to utilize the camera’s 4K video stream (with devices that support it). To enable this, use "captureResolution": "4K"
in your ScanViewConfig (under cameraConfig
):
{
"cameraConfig": {
"captureResolution": "4K"
}
}
For supported iOS devices, it is possible to select the tele-lens, which can provide a clearer, more focused image of barcodes at a distance. This can be particularly useful when scanning small or detailed barcodes that benefit from the optical zoom capabilities of the telephoto lens, resulting in more reliable and accurate scanning results compared to using the standard wide lens.
{
"cameraConfig": {
"defaultCamera": "TELE"
}
}
For details, refer to ScanViewConfig Documentation.
ParseAAMVA
Extract and process structured data from AAMVA-compliant barcodes, commonly found on driver’s licenses and ID cards in the U.S.
Default: false – set it to true to enable automatic parsing.
For details, refer to the Plugin Config JSON schema.
Supported Formats
Custom Symbology Selection: Configure the scanner to detect only the barcode types relevant to your use case, improving speed and accuracy.
Barcode | Code | Example |
---|---|---|
1D Inverse |
|
|
Aztec / Aztec vCard |
|
|
Aztec inverse |
|
|
Bookland/ISBN-10 |
|
|
Codabar |
|
|
Code 11 |
|
|
Code 32 |
|
|
Code 39 |
|
|
Code 93 |
|
|
Code 128 / EAN-14 / EAN-18 / EAN-128 |
|
|
GS1 Databar |
|
|
GS1-128 Coupon |
|
|
Data Matrix |
|
|
Discrete 2 of 5 |
|
|
DotCode |
|
|
EAN 8 |
|
|
EAN 13 / EAN-99 / ISMN |
|
|
GS1 QR Code |
|
|
GS1 128 |
|
|
ITF-14 / Leitcode |
|
|
ISSN |
|
|
ISBT 128 |
|
|
Klant index (KIX) |
|
|
MATRIX 2 of 5 |
|
|
MSI/Plessey |
|
|
Micro QR |
|
|
Micro PDF417 |
|
|
PDF 417 |
|
|
UK Postal/RM4SCC |
|
|
QR Code |
|
|
QR Code Inverse |
|
|
RSS 14 |
|
|
RSS Expanded |
|
|
Trioptic |
|
|
UPC A / Identcode |
|
|
UPC E |
|
|
UPC EAN Extension |
|
|
UPU FICS Postal |
|
|
USPS 4CB/One Code |
|
|
US Planet |
|
|
US Postnet |
|
|
Maxicode |
|