Cómo leer varios códigos de barras a la vez
La lectura simultánea de varios códigos de barras es crucial para diversos sectores, como la logística, el comercio minorista, la sanidad y la gestión de inventarios, ya que permite un procesamiento eficaz de los datos. Con IronBarcode, puede conseguir fácilmente esta capacidad, lo que la convierte en una potente herramienta para agilizar las operaciones y mejorar la productividad.
Empezar a utilizar IronBarcode
Comience a usar IronBarcode en su proyecto hoy con una prueba gratuita.
Cómo leer varios códigos de barras a la vez
- Descargar la biblioteca C# para leer varios códigos de barras
- Utiliza el
Leer
método para extraer valores de códigos de barras de varios formatos de imagen - Utilice el ExpectMultipleBarcodes propiedad para configurar la lectura de uno o varios códigos de barras
- Fije el ExpectMultipleBarcodes a false para aumentar el rendimiento
- Imprimir los valores del código de barras
Ejemplo de lectura de varios códigos de barras
Por defecto, IronBarcode escanea continuamente un documento para leer múltiples códigos de barras. Sin embargo, ha habido casos en los que sólo se devuelve un valor de código de barras, incluso cuando hay varios códigos de barras presentes en la imagen. Para solucionar este problema, los usuarios pueden personalizar la configuración para permitir la lectura de múltiples códigos de barras, como se muestra en el siguiente fragmento de código. Tenga en cuenta que la propiedad ExpectMultipleBarcode existe tanto en la clase BarcodeReaderOptions como en PdfBarcodeReaderOptions, lo que permite a los usuarios utilizarla para leer códigos de barras tanto en imágenes como en documentos PDF.
Imagen de muestra
:path=/static-assets/barcode/content-code-examples/how-to/read-multiple-barcodes-read-multiple-barcodes.cs
using IronBarCode;
using System;
// Set the option to read multiple barcodes
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
ExpectMultipleBarcodes = true,
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
};
// Read barcode
var results = BarcodeReader.Read("testbc1.png", options);
foreach (var result in results)
{
Console.WriteLine(result.ToString());
}
Imports IronBarCode
Imports System
' Set the option to read multiple barcodes
Private options As New BarcodeReaderOptions() With {
.ExpectMultipleBarcodes = True,
.ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
}
' Read barcode
Private results = BarcodeReader.Read("testbc1.png", options)
For Each result In results
Console.WriteLine(result.ToString())
Next result
Al establecer ExpectMultipleBarcodes en true en el fragmento de código, IronBarcode analiza todo el documento en busca de múltiples códigos de barras y los almacena en la variable BarcodeResults. Utilizando un bucle foreach, los usuarios pueden acceder fácilmente a todos los valores del código de barras e imprimirlos en la consola.
Ejemplo de lectura de un código de barras
IronBarcode puede leer códigos de barras simples y múltiples en una imagen o PDF. Por defecto, el motor escanea todo el documento aunque sólo haya un código de barras. Sin embargo, para aumentar el rendimiento al leer un solo código de barras, puede establecer ExpectMultipleBarcodes en false. De este modo, el motor deja de escanear todo el documento tras detectar el primer código de barras, lo que agiliza la recuperación de códigos de barras. El siguiente fragmento de código muestra cómo hacerlo.
Imagen de muestra
:path=/static-assets/barcode/content-code-examples/how-to/read-multiple-barcodes-read-single-barcode.cs
using IronBarCode;
using System;
// Set the option to read single barcode
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
ExpectMultipleBarcodes = false,
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
};
// Read barcode
var results = BarcodeReader.Read("testbc1.png", options);
foreach (var result in results)
{
Console.WriteLine(result.ToString());
}
Imports IronBarCode
Imports System
' Set the option to read single barcode
Private options As New BarcodeReaderOptions() With {
.ExpectMultipleBarcodes = False,
.ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
}
' Read barcode
Private results = BarcodeReader.Read("testbc1.png", options)
For Each result In results
Console.WriteLine(result.ToString())
Next result
En el fragmento de código anterior, hemos utilizado la misma imagen con múltiples códigos de barras que antes, pero esta vez, hemos establecido ExpectMultipleBarcodes en false. Como resultado, sólo se devuelve el valor del primer código de barras, y el proceso de escaneado se detiene una vez recuperado el primer código de barras.
Comparación de resultados
Establecer ExpectMultipleBarcodes en false puede mejorar en gran medida la eficacia de la lectura de códigos de barras individuales en la imagen.
Utilizando el fragmento de código proporcionado, he aquí una estimación aproximada de la diferencia de rendimiento entre establecer ExpectMultipleBarcode en true y false en la misma máquina:
ExpectMultipleBarcodes = true | ExpectMultipleBarcodes = false |
---|---|
0,91 segundos | 0.10 segundo |