En el artículo anterior, aprendió cómo generar varios tipos de códigos de barras mediante programación. En este artículo, aprenderá cómo leer los códigos de barras usando la API del lector de códigos de barras C#. El artículo también cubrirá cómo leer tipos particulares o diferentes de simbologías de códigos de barras en una imagen.
- API de lector de código de barras C#
- Leer códigos de barras usando C#
- Escanear y leer una simbología de código de barras particular en C#
- Múltiples simbologías de códigos de barras en una sola imagen
C# API para leer códigos de barras
Aspose.BarCode for .NET proporciona un potente escáner de código de barras y una API lectora que le permite leer una variedad de simbologías de códigos de barras en unas pocas líneas de código. Puede descargar la API o instalarla dentro de su aplicación .NET mediante NuGet.
PM> Install-Package Aspose.BarCode
Leer códigos de barras usando C#
Los siguientes son los pasos para leer un código de barras 1D o 2D de un archivo de imagen.
- Cree un objeto de la clase BarCodeReader y especifique la ruta del archivo de la imagen.
- Utilice la clase BarCodeResult para obtener los resultados del reconocimiento del método BarCodeReader.ReadBarCodes().
- Recupere el tipo y el texto del código de barras del objeto BarCodeResult.
El siguiente ejemplo de código muestra cómo leer un código de barras usando C#.
try
{
// Leer archivo del directorio
using (BarCodeReader reader = new BarCodeReader("Scan.jpg"))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
// Leer tipo de simbología y texto de 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.");
}
Leer una simbología de código de barras particular en C#
Podría darse el caso de que ya conozcas la simbología del código de barras que vas a leer. En tales situaciones, puede proporcionar el tipo de código de barras al objeto BarCodeReader. Conocer el tipo de antemano acelera el proceso de reconocimiento del código de barras. El siguiente ejemplo de código muestra cómo especificar el tipo de código de barras.
try
{
// Crear una instancia de la clase BarCodeReader
using (BarCodeReader reader = new BarCodeReader("Code128.jpg", DecodeType.Code128))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
// Mostrar texto de código y tipo de simbología
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.");
}
Escanee varias simbologías de códigos de barras en una sola imagen
En casos particulares, es posible que tenga varias simbologías de códigos de barras colocadas en una sola imagen. Para tal caso, puede configurar la API para que reconozca todos los códigos de barras de una sola vez. Los siguientes son los pasos para leer varios códigos de barras en una sola imagen.
- Cree una matriz de BaseDecodeType para contener la lista de simbologías de códigos de barras.
- Cree un objeto de la clase BarCodeReader y cargue la imagen.
- Lea códigos de barras usando BarCodeReader.ReadBarCodes() y extraiga su tipo y texto.
El siguiente ejemplo de código muestra cómo leer varias simbologías de códigos de barras en una sola imagen mediante C#.
try
{
BaseDecodeType[] objArray = new BaseDecodeType[] { DecodeType.Code39Standard, DecodeType.Pdf417 };
// Inicialice el BarCodeReader, llame al método Read() en un bucle y muestre el código de texto y el tipo de simbología
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.");
}
Conclusión
En este artículo, ha aprendido a leer códigos de barras mediante programación usando C#. Además, ha visto cómo leer una o varias simbologías de códigos de barras en una sola imagen. Puede obtener más información sobre la API del lector de código de barras de C# utilizando la documentación.