digitalizar e ler código de barras em c#

No artigo anterior, você aprendeu como gerar vários tipos de códigos de barras programaticamente. Neste artigo, você aprenderá a ler os códigos de barras usando a API do leitor de código de barras C#. O artigo também abordará como ler tipos específicos ou diferentes de simbologias de código de barras em uma imagem.

API C# para ler códigos de barras

Aspose.BarCode for .NET fornece um poderoso scanner de código de barras e uma API de leitor que permite ler uma variedade de simbologias de código de barras em poucas linhas de código. Você pode baixar a API ou instalá-la em seu aplicativo .NET usando NuGet.

PM> Install-Package Aspose.BarCode

Ler códigos de barras usando C#

A seguir estão as etapas para ler um código de barras 1D ou 2D de um arquivo de imagem.

O exemplo de código a seguir mostra como ler um código de barras usando C#.

try
{
	// Ler arquivo do diretório
	using (BarCodeReader reader = new BarCodeReader("Scan.jpg"))
	{
		foreach (BarCodeResult result in reader.ReadBarCodes())
		{
			// Leia o tipo de simbologia e o texto do código
			Console.WriteLine("Symbology Type: " + result.CodeType);
			Console.WriteLine("CodeText: " + result.CodeText);
		}
	}
}
catch (Exception ex)
{
	Console.WriteLine(ex.Message + "\nThis example will only work if you apply a valid Aspose BarCode License. You can purchase full license or get 30 day temporary license from https://www.aspose.com/purchase/default.aspx.");
}

Leia uma simbologia de código de barras específica em C#

Pode ser o caso de você já conhecer a simbologia do código de barras que vai ler. Em tais situações, você pode fornecer o tipo do código de barras para o objeto do BarCodeReader. Conhecer o tipo de antemão acelera o processo de reconhecimento do código de barras. O exemplo de código a seguir mostra como especificar o tipo de código de barras.

try
{
    // Criar instância da classe BarCodeReader 
    using (BarCodeReader reader = new BarCodeReader("Code128.jpg", DecodeType.Code128))
    {
        foreach (BarCodeResult result in reader.ReadBarCodes())
        {
            // Texto do código de exibição e tipo de simbologia
            Console.WriteLine("CodeText: " + result.CodeText);
            Console.Write("Symbology Type: " + result.CodeType);
        }
    }
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message + "\nThis example will only work if you apply a valid Aspose BarCode License. You can purchase full license or get 30 day temporary license from http://wwww.aspose.com/purchase/default.aspx.");
}

Digitalize várias simbologias de código de barras em uma única imagem

Em casos específicos, você pode ter várias simbologias de código de barras colocadas em uma única imagem. Nesse caso, você pode configurar a API para reconhecer todos os códigos de barras de uma só vez. A seguir estão as etapas para ler vários códigos de barras em uma única imagem.

O exemplo de código a seguir mostra como ler várias simbologias de código de barras em uma única imagem usando C#.

try
{                 
    BaseDecodeType[] objArray = new BaseDecodeType[] { DecodeType.Code39Standard, DecodeType.Pdf417 };

    // Inicialize o BarCodeReader, chame o método Read() em um loop e exiba o texto do código e o tipo de simbologia
    using (BarCodeReader reader = new BarCodeReader("RecognizingMultipleSymbologies.png", objArray))
    {
        foreach (BarCodeResult result in reader.ReadBarCodes())
        {
            Console.WriteLine("Codetext: " + result.CodeText);
            Console.WriteLine("Symbology type: " + result.CodeType);
        }
    }
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message + "\nThis example will only work if you apply a valid Aspose BarCode License. You can purchase full license or get 30 day temporary license from http://wwww.aspose.com/purchase/default.aspx.");
}

Conclusão

Neste artigo, você aprendeu a ler códigos de barras programaticamente usando C#. Além disso, você viu como ler uma ou várias simbologias de código de barras em uma única imagem. Você pode aprender mais sobre a API do leitor de código de barras C# usando a documentação.

Veja também