In This Topic
VintaSoft Barcode .NET SDK is professional .NET barcode library, which allows to recognize and generate 1D and 2D barcodes in .NET Core or .NET Framework application for Windows, Linux, macOS and Android.
SDK features
-
General features
- SDK can be used for developing .NET 8, .NET 7 and .NET 6 application (console, WPF, WinForms, ASP.NET Core, MAUI, service, etc) for Windows, Linux and macOS
- SDK can be used for developing .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0 and 3.5 application (console, WPF, WinForms, ASP.NET MVC, ASP.NET WebForms, service, etc) for Windows
- SDK can be used for developing .NET 8 application (MAUI) for Android
- The SDK core is written in C#
- AnyCPU, x86 and x64 mode support
- Create a barcode in raster or vector format
- Read an ideal, distorted or damaged barcode from image
-
Recognize barcodes
-
Read barcodes from a file or stream
-
Read barcodes from image:
-
Read barcodes from the whole image or region of interest
- Read barcodes from image in multiple threads
- Read rotated barcodes
- Read distorted 2D barcodes
-
Detect error in the barcode value using the checksum
-
Restore the value of 2D barcode (Aztec, Data Matrix, DotCode, Han Xin Code, Maxicode, Micro QR Code, PDF417, QR Code, Royal Mail Mailmark) using the Reed-Solomon error correction algorithm
-
Use callback function to analyze and filter the barcode candidates during the barcode recognition
-
Obtain information about recognized barcode:
- Barcode symbology type
- Barcode value as string
- Barcode value in binary form
-
Confidence for the barcode value
- Coordinates of the barcode bounding rectangle
- Barcode orientation
- Information about non-data flags (FNC1, ECI, Structure Append, etc) stored in barcode value
-
Extend a list of supported barcodes by defining the subsets for existing barcode symbologies - architecture is open
- Cleanup images (remove noise, smooth image, detect threshold automatically, erode image) before barcode recognition for improving results of barcode recognition
- Serialize and deserialize the barcode reader settings to XML file
- Use barcode for automatization of document separation or indexing
-
Generate barcodes
-
Verify barcodes
-
Use ISO/IEC 15416 barcode print quality test for testing one-dimensional linear barcode symbols
- All 1D linear barcodes (Code 39, Code 128, EAN, UPC, etc) are supported
-
Perform testing by the following parameters: Decode, Max Reflectance (Rmax), Min Reflectance (Rmin), Symbol Contrast (SC), Min Edge Contrast (ECmin), Modulation (MOD), Max Element Reflectance Non-uniformity (ERNmax), Defects, Decodability
-
Use ISO/IEC 15415 barcode print quality test for testing two-dimensional matrix barcode symbols
- Supported barcode symbologies: Aztec, DataMatrix, Han Xin Code, QR Code, Micro QR Code
- Perform testing by the following parameters: Decode, Max Reflectance (Rmax), Min Reflectance (Rmin), Symbol Contrast (SC), Modulation (MOD), Reflectance Margin, Fixed Pattern Damage, Axial Nonuniformity, Grid Nonuniformity, Unused Error Correction (UEC), Distortion Angle, Contrast Uniformity
-
Visualize the modulation matrix of analyzed barcode to identify the problems in barcode
-
Use ISO/IEC 15415 and ISO/IEC 15416 barcode print quality tests for testing multi-row barcode symbologies with cross-row scanning ability
- Supported barcode symbologies: PDF417, PDF417 Compact, Micro PDF417
- Perform testing by the following parameters: Decode, ISO15416 Start/RAP pattern test, ISO15416 Stop/RAP pattern test, Unused Error Correction (UEC), Codeword Yield, Codeword Print Quality
-
Supported linear barcodes (1D):
-
Code 11 (Code11, USD-8, USD8)
-
Code 39 (Alpha39, Code 3 of 9, Type 39, USS Code 39, USD-3)
- Code 39 Extended
-
Code 32 (Italian Pharmacode, Codice 32 Pharmacode)
- Code 39 without Start/Stop symbols
-
VIN (Vehicle Identification Number)
-
PZN (Pharmazentralnummer)
-
DHL AWB (DHL Code 39 AWB)
- Numly Number
-
HIBC LIC 39 (HIBCC Labeler Identification Code)
-
Code 93 (USS Code 93, USS-93)
-
Codabar (Code 2 of 7, NW-7)
-
Code 128 (ANSI/AIM Code 128, USS Code 128)
-
GS1-128 (UCC/EAN-128, EAN-128)
- SSCC-18
- FedEx Ground96
-
VICS BOL, VICS SCAC PRO
- Swiss PostParcel
- ISBT 128
-
HIBC LIC 128 (HIBCC Labeler Identification Code)
-
EAN-8, EAN-8 +2, EAN-8 +5, JAN-8, EAN-Velocity
-
EAN-13, EAN-13 +2, EAN-13 +5, JAN-13, ISBN, ISSN, ISMN
-
UPC-A, UPC-A +2, UPC-A +5
-
UPC-E, UPC-E +2, UPC-E +5
-
Standard 2 of 5 (Industrial 2 of 5, Code 2/5)
-
Interleaved 2 of 5 (ANSI/AIM ITF 25, ITF, I-2/5)
- ITF-14
-
Italian Post 2 of 5 (Italin Post 25, Italian Post ITF 2/5)
-
OPC (Optical Product Code)
- Deutsche Post Identcode
- Deutsche Post Leitcode
-
IATA 2 of 5 (2/5 IATA)
-
Matrix 2 of 5 (2/5 Matrix)
- Telepen
-
Patch Code (Kodak Patch Code)
-
RSS-14, GS1 DataBar
-
RSS Limited, GS1 DataBar Limited
-
RSS Expanded, GS1 DataBar Expanded
-
Pharmacode (Laetus Pharmacode)
-
MSI (MSI/Plessey, Modified Plessey)
-
Supported stacked linear barcodes (1D):
-
Code 16K (USS-16K)
-
RSS-14 Stacked, GS1 DataBar Stacked
-
RSS Expanded Stacked, GS1 DataBar Expanded Stacked
-
Supported postal 2/4-state barcodes (1D):
-
Australian Post (Australia Post Customer Barcode)
-
Dutch KIX (Royal TPG Post KIX)
-
Royal Mail (RM4SCC, RoyalMail4SCC, Singapore 4-State Postal)
-
Postnet (USPS POSTNET)
-
Planet (USPS PLANET, USPS Confirm Service Barcode)
- Intelligent Mail
-
Mailmark 4-state barcode C (Royal Mail Mailmark 4-state barcode C)
-
Mailmark 4-state barcode L (Royal Mail Mailmark 4-state barcode L)
-
Japan Post (Japanese Postal Barcode, Kasutama Barcode)
-
Supported 2D barcodes:
-
Aztec, Aztec Compact, Aztec Rune
- GS1 Aztec
- XFA Compressed Aztec
-
HIBC LIC Aztec Code (HIBCC Labeler Identification Code)
-
Data Matrix
- GS1 Data Matrix
-
PPN (IFA PPN-Code, Pharmacy Product Number)
- Royal Mail Mailmark CMDM Type7, Type9, Type29
- XFA Compressed DataMatrix
- ISBT 128 Data Matrix
-
HIBC LIC Data Matrix (HIBCC Labeler Identification Code)
-
DotCode
-
Han Xin Code (Chinese Sensible Code)
-
PDF417, PDF417 Compact, Macro PDF417
-
AAMVA (DL/ID Card Design Standard)
- XFA Compressed PDF417
- Micro PDF417
-
QR Code (Model 1, Model 2)
- GS1 QR Code
- XFA Compressed QR Code
-
HIBC LIC QR Code (HIBCC Labeler Identification Code)
- Swiss QR Code
- Micro QR Code
- MaxiCode
-
Supported composite barcodes:
- GS1-128 CC-A, GS1-128 CC-B, GS1-128 CC-C
- GS1 DataBar CC-A, GS1 DataBarCC-B
- GS1 DataBar Expanded CC-A, GS1 DataBar Expanded CC-B
- GS1 DataBar Expanded Stacked CC-A, GS1 DataBar Expanded Stacked CC-B
- GS1 DataBar Limited CC-A, GS1 DataBar Limited CC-B
- GS1 DataBar Stacked CC-A, GS1 DataBar Stacked CC-B
- EAN-13 CC-A, EAN-13 CC-B
- EAN-8 CC-A, EAN-8 CC-B
- UPC-A CC-A, UPC-A CC-B
- UPC-E CC-A, UPC-E CC-B
Development and Deployment requirements
-
Development requirements:
- Development environments: Microsoft Visual Studio, Microsoft Studio Code, JetBrains Rider, .NET CLI
- Programming languages: C#, VB.NET, any .NET compatible language
- Development platforms: .NET, WinForms, WPF, ASP.NET, MAUI
-
Deployment requirements:
- Windows (Windows 11/10/8.1/8/7; Windows Server 2025/2022/2019/2016/2012/2008; 32-bit and 64-bit) with .NET 8, .NET 7 or .NET 6
- Windows (Windows 11/10/8.1/8/7/Vista/XP; Windows Server 2025/2022/2019/2016/2012/2008; 32-bit and 64-bit) with .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5
- Linux (Ubuntu 23/22/20/18/16; Debian 11/10/9; Fedora 39/38/37/36/35/34/33/32/31/30/29; CentOS 8/7; OpenSUSE 15; Redhate Enterprise Linux 8/7; Alpine 3) with .NET 8, .NET 7 or .NET 6
- MacOS (MacOS 12/11/10) with .NET 8, .NET 7 or .NET 6
- Android (API 21+) with .NET 8
Online resources