In This Topic
VintaSoft Barcode .NET SDK is professional .NET barcode library, which allows to recognize and generate 1D and 2D barcodes in .NET application for Windows, Linux, macOS.
SDK features
-
General features
- SDK can be used for developing .NET 10, .NET 9, .NET 8, .NET 7 and .NET 6 application (console, WPF, WinForms, ASP.NET Core, service, etc) for Windows, Linux, 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
- The SDK core is written in C#
- AnyCPU, x86 and x64 mode support
- Generate a barcode in raster or vector format
- Recognize an ideal, distorted or damaged barcode in image
-
Recognize barcodes
-
Recognize barcodes from a file or stream
-
Recognize barcodes in image:
-
Recognize barcodes in the whole image or image region
- Recognize barcodes in image in multiple threads
- Recognize barcodes sequentially in low-quality images obtained from one source
- Recognize rotated barcodes
- Recognize 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
- GS1 Digital Link DataMatrix
-
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
- GS1 Digital Link QR
- 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
-
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 10, .NET 9, .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 24/23/22/20/18; Debian 12/11/10/9; Fedora 44/43/42/41; OpenSUSE 15; CentOS 9/8/7; Redhate Enterprise Linux 8/7; Alpine 3) with .NET 10, .NET 9, .NET 8, .NET 7 or .NET 6
- macOS (macOS 26/15/14/13/12) with .NET 10, .NET 9, .NET 8, .NET 7 or .NET 6
Online resources