KA Barcode Reader for C# Library
How to read barcodes in C# ASP.NET, MVC, Windows apps?

Using barcode reader library to scan, recognize 1D and 2D Barcode Images in C# for .NET Application
Barcode Reader for C#.NET > Scan, read, recognize barcode image in C#


  • Coded completely in C# with full integration into Microsoft .NET Framework & many Windows systems
  • Compatible with ISO/IEC & GS1 symbology specifications to read barcode images
  • Using Barcode Control Library to scan, read barcodes in ASP.NET websites/webservice, WinForms, etc
  • Easy to scan, recognize 1D and matrix barcode images in Visual C#.NET & console applications
  • Support multiple high quality linear barcodes reading, including alphanumeric barcodes
  • Reliable C# barcode reader component to recognize barcode


KA.Barcode Reader for .NET SDK supports scan, recognize barcodes from image files for ASP.NET Web, .NET WinForms, Crystal Reports, and RDLC Report applications with C#.NET programming. It supports more than 10 barcode types including linear and matrix barcodes:
Linear Barcodes: Codabar, Code 39, Code 128, EAN-128, EAN-8, EAN-13, Interleaved 2 of 5, UPC-A, UPC-E.
2D Barcodes: QR Code, Data Matrix, PDF-417.
Download KA.Barcode Reader for .NET Trial Version
Perpetual Evaluation
We offer perpectual evaluation/trial version of this barcode generator library.
Restrictions of Evaluation
If you want to use barcode reading function for commercial application, you need to buy our developer licenses.
How to Read Barcodes with C#.NET Class
KA.Barcode Reader SDK for C#.NET allows several methods to scan, read barcodes from image files in C#.net. Here is the C# sample code for you:
String inputImageFile = @"D:\sample.png";

//  Read QRCode from an image file.
String[] msgs = BarcodeReader.readBarcodeMessage(inputImageFile, BarcodeType.QRCode);
if (msgs != null && msgs.Length > 0)
{
    foreach (String msg in msgs)
    {
        Console.WriteLine("Message: " + msg);
    }
}
else
{
    Console.WriteLine("[No Barcode Found]");
}
How to Read Barcodes from Stream objects in C#
String inputImageFile = @"D:\sample.png";

using (Stream stream = File.Open(inputImageFile, FileMode.Open, FileAccess.Read))
{
    System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(stream); 
    //  Read QRCode from a Bitmap object.
    String[] msgs = BarcodeReader.readBarcodeMessage(bitmap, BarcodeType.QRCode);
    if (msgs != null && msgs.Length > 0)
    {
        foreach (String msg in msgs)
        {
            Console.WriteLine("Message: " + msg);
        }
    }
    else
    {
        Console.WriteLine("[No Barcode Found]");
    }
}
How to Scan and Read Barcode from Specified region in image using C# Class
String inputImageFile = @"D:\sample.png";

//  Set scan region(s) in the input image.
List<Region> regions = new List<Region>();
//  Region:
//  xMin - 10% of the image width; xMax - 90% of the image width.
//  yMin - 50% of the image height; yMax - 100% of the image height.
regions.Add(new Region(10, 90, 50, 100));
//  Read QRCode from an image file.
String[] msgs = BarcodeReader.readBarcodeMessage(inputImageFile, BarcodeType.QRCode, regions);
if (msgs != null && msgs.Length > 0)
{
    foreach (String msg in msgs)
    {
        Console.WriteLine("Message: " + msg);
    }
}
else
{
    Console.WriteLine("[No Barcode Found]");
}
how to read barcode with different barcode types
String inputImageFile = @"D:\sample.png";

//  Try to read Code128
String[] msgs = BarcodeReader.readBarcodeMessage(inputImageFile, BarcodeType.Code128);
if (msgs != null && msgs.Length > 0)
{
    foreach (String msg in msgs)
    {
        Console.WriteLine("Code128: " + msg);
    }
}
else
{
    Console.WriteLine("[No Code128 Found]");
}

//  Try to read DataMatrix
msgs = BarcodeReader.readBarcodeMessage(inputImageFile, BarcodeType.DataMatrix);
if (msgs != null && msgs.Length > 0)
{
    foreach (String msg in msgs)
    {
        Console.WriteLine("DataMatrix: " + msg);
    }
}
else
{
    Console.WriteLine("[No DataMatrix Found]");
}

//  Try to read QRCode
msgs = BarcodeReader.readBarcodeMessage(inputImageFile, BarcodeType.QRCode);
if (msgs != null && msgs.Length > 0)
{
    foreach (String msg in msgs)
    {
        Console.WriteLine("QRCode: " + msg);
    }
}
else
{
    Console.WriteLine("[No QRCode Found]");
}