Cómo definir la región de cultivo del código de barras para una lectura más rápida

por Hairil Hasyimi Bin Omar

Una de las características más importantes de IronBarcode es la posibilidad de que los usuarios especifiquen Regiones de Recorte. El objetivo de esta función es permitir que IronBarcode sólo lea códigos de barras específicos o el área especificada por la Región de Recorte en la imagen utilizando el objeto IronSoftware.Drawing.Rectangle. El uso de esta función no sólo reducirá los errores de lectura, sino que también mejorará el rendimiento de la lectura.

Biblioteca NuGet C# para

Instalar con NuGet

Install-Package BarCode
o
Java PDF JAR

Descargar DLL

Descargar DLL

Instalar manualmente en su proyecto

Buscar las coordenadas y el tamaño de la región de recorte en una imagen

Existen muchas formas de encontrar las coordenadas de un punto en una imagen. Una de ellas es cargar la imagen utilizando la aplicación 'Paint' en el ordenador. Para obtener la primera coordenada de la Región de Recorte, mueva el cursor al primer punto preferido que será la esquina superior izquierda del Rectángulo y tome la coordenada x,y dada por la app en la parte inferior izquierda de la pantalla. A continuación, localice el segundo punto que será la esquina inferior derecha del Rectángulo. Consulte la imagen siguiente para comprenderlo mejor.

Referencia CropRegion

Los valores de las coordenadas pueden utilizarse como propiedades del objeto Rectángulo. La anchura del objeto puede definirse como x2 - x1 mientras que la altura puede definirse como y2 - y1.

:path=/static-assets/barcode/content-code-examples/how-to/set-crop-region-instantiate-CropRegion.cs
using IronBarCode;

int x1 = 62;
int y1 = 29;
int x2 = 345;
int y2 = 522;

IronSoftware.Drawing.Rectangle crop1 = new IronSoftware.Drawing.Rectangle(x: x1, y: y1, width: x2-x1, height: y2-y1);
Imports IronBarCode

Private x1 As Integer = 62
Private y1 As Integer = 29
Private x2 As Integer = 345
Private y2 As Integer = 522

Private crop1 As New IronSoftware.Drawing.Rectangle(x:= x1, y:= y1, width:= x2-x1, height:= y2-y1)
VB   C#

Aplicar CropRegion y leer código de barras

Una vez que hemos hecho el trabajo duro de definir las CropRegions donde queremos que IronBarcode lea, podemos aplicar el objeto en BarcodeReaderOptions como una de las propiedades, además de otras configuraciones, que puede utilizarse como parámetro en la función BarcodeReader.Read() method. El siguiente fragmento de código muestra

:path=/static-assets/barcode/content-code-examples/how-to/set-crop-region-apply-CropRegion.cs
using IronBarCode;
using System;

int x1 = 62;
int y1 = 29;
int x2 = 345;
int y2 = 522;

IronSoftware.Drawing.Rectangle crop1 = new IronSoftware.Drawing.Rectangle(x: x1, y: y1, width: x2 - x1, height: y2 - y1);

BarcodeReaderOptions options = new BarcodeReaderOptions()
{
    CropArea = crop1
};

var result = BarcodeReader.Read("sample.png", options);
foreach (var item in result)
{
    Console.WriteLine(item.Value);
}
Imports IronBarCode
Imports System

Private x1 As Integer = 62
Private y1 As Integer = 29
Private x2 As Integer = 345
Private y2 As Integer = 522

Private crop1 As New IronSoftware.Drawing.Rectangle(x:= x1, y:= y1, width:= x2 - x1, height:= y2 - y1)

Private options As New BarcodeReaderOptions() With {.CropArea = crop1}

Private result = BarcodeReader.Read("sample.png", options)
For Each item In result
	Console.WriteLine(item.Value)
Next item
VB   C#

En el fragmento de código anterior, utilizamos el enstantiated Rectángulo en BarcodeReaderOptions como el objeto Área de cultivo propiedad. A continuación, utilizamos este BarcodeReaderOptions como parámetro en el BarcodeReader.Read() method to apply the CropArea in the image and read the barcodes inside.