Wie man einen Barcode-Zuschnittsbereich in C# einstellt

Wie definiert man einen Barcode-Ausschnitt für schnelleres Lesen in C#35;

This article was translated from English: Does it need improvement?
Translated
View the article in English

Definieren Sie einen Ausschnitt mit IronSoftware.Drawing.Rectangle, um den Scanbereich von IronBarcode auf bestimmte Bildregionen zu beschränken. Dadurch wird die Leistung beim Lesen von Barcodes erheblich verbessert und Fehler werden reduziert, da nur relevante Bereiche erfasst werden.

Eine der wichtigsten Funktionen von IronBarcode ist die Möglichkeit, Crop Regions anzugeben. Mit dieser Funktion kann IronBarcode nur bestimmte Barcodes oder Bereiche lesen, die mit dem IronSoftware.Drawing.Rectangle-Objekt durch den Beschnittbereich im Bild festgelegt wurden. Die Verwendung dieser Funktion reduziert nicht nur Lesefehler, sondern verbessert auch die Leseleistung. Diese Technik ist besonders wertvoll bei der Arbeit mit mehrseitigen Dokumenten oder hochauflösenden Bildern, bei denen die Position der Strichcodes vorhersehbar ist.

Bei der Verarbeitung von Bildern mit mehreren Barcodes oder komplexen Hintergründen ist die Definition eines Beschnittbereichs entscheidend für die Optimierung der Barcode-Lesegeschwindigkeit. Durch die Begrenzung des Scanbereichs können Sie eine bis zu fünfmal schnellere Verarbeitungsgeschwindigkeit als beim Scannen ganzer Bilder erreichen und gleichzeitig die Zahl der Fehlalarme durch Nicht-Barcode-Elemente reduzieren.

Schnellstart: Zuschneidebereich definieren und anwenden, um Barcodes schneller zu lesen

Erstellen Sie in Sekunden ein Zuschneiderechteck und geben Sie es in IronBarcode ein – ohne zusätzliche Einrichtung, ohne Reibung. Sehen Sie, wie einfach es ist, das Scannen auf einen bestimmten Bildbereich mit BarcodeReaderOptions zu beschränken.

Nuget IconLegen Sie jetzt mit NuGet los, um PDFs zu erstellen:

  1. Installieren Sie IronBarcode mit dem NuGet-Paketmanager.

    PM > Install-Package BarCode

  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    var results = IronBarCode.BarcodeReader.Read("image.png", new IronBarCode.BarcodeReaderOptions { CropArea = new IronSoftware.Drawing.Rectangle(x: 50, y: 100, width: 300, height: 150) });
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute mit der Nutzung von IronBarcode in Ihrem Projekt – mit einer kostenlosen Testversion.
    arrow pointer

Wie finde ich die Koordinaten und die Größe des Beschnittbereichs in einem Bild?

Es gibt viele Möglichkeiten, die Koordinaten eines Punktes in einem Bild zu bestimmen. Eine Möglichkeit ist, das Bild mit der Paint-Anwendung auf Ihrem Computer zu laden. Um die erste Koordinate des Zuschneidebereichs zu erhalten, bewegen Sie den Cursor zur gewünschten ersten Stelle, die die obere linke Ecke des Rectangle sein wird, und nehmen Sie die x, y-Koordinate, die von der App unten links auf dem Bildschirm angezeigt wird. Legen Sie dann den zweiten Punkt fest, der die untere rechte Ecke des Rectangle sein wird. Siehe das Bild unten für ein besseres Verständnis.

Für fortgeschrittene Szenarien können Sie auch Bildbearbeitungsprogramme wie GIMP oder Photoshop verwenden, die präzise Pixelkoordinaten und Messwerkzeuge bieten. Einige Entwickler ziehen es vor, Online-Koordinatenfinder-Tools zu verwenden oder einfache HTML/JavaScript-Hilfsprogramme zu erstellen, die die Mauskoordinaten beim Bewegen des Bildes anzeigen.

Crop region diagram showing rectangular area with corner coordinates (x1,y1) and (x2,y2) and dimension calculations

Welche Tools kann ich zur Bestimmung von Koordinaten verwenden?

Die Koordinatenwerte können dann als Eigenschaften für das Rectangle-Objekt verwendet werden. Die Breite des Objekts kann als x2 - x1 definiert werden, während die Höhe als y2 - y1 definiert werden kann. Bei der Arbeit mit Barcode-Bildern ist es wichtig zu wissen, dass die Koordinaten in der linken oberen Ecke (0,0) beginnen und nach rechts (x-Achse) und unten (y-Achse) zunehmen.

Es gibt mehrere Ansätze zur Koordinatenbestimmung:

  • Eingebaute Betriebssystem-Tools: Windows Paint, macOS Preview
  • Browser Developer Tools: Element auf webbasierten Bildern inspizieren
  • Professionelle Software: Adobe Photoshop, GIMP
  • Benutzerdefinierte Dienstprogramme: Einfache Anwendungen zur Anzeige von Koordinaten
  • Debugging-Funktionen von IronBarcode: Export von verarbeiteten Bildern mit Koordinatenüberlagerungen

Wie berechne ich die Abmessungen eines Rechtecks anhand von Koordinaten?

Sobald Sie Ihre zwei Eckpunkte haben, ist die Berechnung der Abmessungen einfach. Für das Rechteck sind vier Parameter erforderlich: x-Koordinate, y-Koordinate, Breite und Höhe. Hier erfahren Sie, wie Sie die Crop-Region richtig instanziieren:

: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)
$vbLabelText   $csharpLabel

Dieses Koordinatensystem arbeitet nahtlos mit den Bildkorrekturfunktionen von IronBarcode zusammen und ermöglicht es Ihnen, Filter nur auf bestimmte Bereiche Ihres Bildes anzuwenden.

Wie wende ich CropRegion an und lese BarCodes?

Sobald Sie die CropRegions definiert haben, die IronBarcode lesen soll, können Sie das Objekt zusammen mit anderen Einstellungen als eine der Eigenschaften in BarcodeReaderOptions übernehmen. Dies kann als Parameter in der BarcodeReader.Read()-Methode verwendet werden. Der folgende Code-Ausschnitt zeigt diesen Prozess:

Welche Parameter akzeptiert BarcodeReaderOptions?

Die Klasse BarcodeReaderOptions bietet umfassende Kontrolle über den Barcode-Leseprozess. Über die Anbaugebiete hinaus können Sie konfigurieren:

  • Geschwindigkeitsoptimierung: Gleichgewicht zwischen Genauigkeit und Leistung mit Geschwindigkeitseinstellungen
  • BarCode-Typen: Geben Sie die genauen Formate an, nach denen gesucht werden soll (unterstützte Formate)
  • Bildfilter: Korrekturen für schiefe oder beschädigte BarCodes anwenden
  • Multithreading: Ermöglicht parallele Verarbeitung für bessere Leistung
  • Rotationsbehandlung: Automatisches Erkennen von gedrehten Barcodes

Wie verarbeite ich mehrere BarCode-Ergebnisse aus einem beschnittenen Bereich?

Beim Scannen eines ausgeschnittenen Bereichs, der mehrere Barcodes enthält, gibt IronBarcode eine Sammlung von Ergebnissen zurück. Jedes Ergebnis enthält wertvolle Metadaten, darunter die genaue Position innerhalb des Erntegebiets, den Barcodetyp und den dekodierten Wert. Hier erfahren Sie, wie Sie eine umfassende Verarbeitung von Erntegebieten implementieren:

: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
$vbLabelText   $csharpLabel

Im obigen Code-Ausschnitt haben wir das instanziierte Rectangle im BarcodeReaderOptions-Objekt als CropArea-Eigenschaft verwendet. Wir verwenden dann dieses BarcodeReaderOptions-Objekt als Parameter in der BarcodeReader.Read()-Methode, um das Zuschneidebereich auf das Bild anzuwenden und die Barcodes darin zu lesen.

Fortgeschrittene Techniken in der Pflanzenproduktion

Für Produktionsanwendungen sollten Sie diese fortschrittlichen Strategien in Betracht ziehen:

  1. Dynamische Beschnittbereiche: Berechnung von Beschnittbereichen auf der Grundlage von Dokumentvorlagen oder OCR-Ergebnissen
  2. Mehrere Regionen: Verarbeiten Sie mehrere Schnittbereiche in einem einzigen Bild für komplexe Layouts
  3. Performance-Optimierung: Kombinieren Sie Erntebereiche mit asynchroner Verarbeitung für maximalen Durchsatz
  4. Fehlerbehandlung: Implementierung von Fallback-Strategien, wenn BarCodes nicht in den erwarteten Regionen gefunden werden

Bei der Arbeit mit PDF-Dokumenten können Sie Beschnittbereiche auf bestimmte Seiten anwenden und so die Verarbeitungszeit für große Dateien drastisch reduzieren. Dies ist besonders nützlich für Rechnungen, Versandetiketten oder Formulare, bei denen die Positionen der Strichcodes standardisiert sind.

Best Practices für die Definition von Kulturpflanzenregionen

Die Effektivität der Anbaugebiete soll maximiert werden:

  • Add padding: Fügen Sie 10-20 Pixel um die erwarteten BarCode-Positionen ein, um leichte Abweichungen auszugleichen
  • Testen Sie gründlich: Überprüfen Sie, ob die Beschnittbereiche im gesamten Dokument funktionieren
  • Koordinaten dokumentieren: Führen Sie eine Referenzliste der gängigen Anbaugebiete für Ihre Anwendung
  • Berücksichtigen Sie die Skalierung: Berücksichtigen Sie unterschiedliche Bildauflösungen oder DPI-Einstellungen
  • Leistungsüberwachung: Verfolgen Sie die Verarbeitungszeiten, um die Effektivität der Anbauregion zu überprüfen

Für Anwendungen, die eine Fehlertoleranz erfordern, sollte ein Ansatz mit zwei Durchläufen implementiert werden: Zuerst wird der Beschnittbereich gescannt, dann wird auf das Scannen des gesamten Bildes zurückgegriffen, wenn in den erwarteten Bereichen keine Barcodes gefunden werden.

Abschluss

Die Definition von Beschnittbereichen ist eine leistungsstarke Technik zur Optimierung der Barcode-Leseleistung in Ihren .NET-Anwendungen. Indem Sie den Scanbereich auf bestimmte Regionen beschränken, können Sie die Geschwindigkeit deutlich erhöhen und gleichzeitig die Zahl der Fehlalarme reduzieren. Unabhängig davon, ob Sie Einzelbilder oder Stapelverarbeitungsvorgänge verarbeiten, bieten Crop Regions die für Produktionsumgebungen erforderliche Präzision und Leistung.

Häufig gestellte Fragen

Was ist ein Barcode-Schnittbereich und warum sollte ich ihn verwenden?

Ein Barcode-Ausschnitt ist ein spezifischer Bereich innerhalb eines Bildes, auf den IronBarcode seine Scanaktivitäten konzentriert. Durch die Definition eines Beschnittbereichs mit IronSoftware.Drawing.Rectangle können Sie die Lesegeschwindigkeit von Barcodes bis zu 5x erhöhen und gleichzeitig Fehler reduzieren, indem Sie das Scannen auf die relevanten Bereiche Ihres Bildes beschränken.

Wie definiere ich einen Beschnittbereich für das Lesen von Barcodes?

Sie können einen Beschnittbereich in IronBarcode definieren, indem Sie ein IronSoftware.Drawing.Rectangle-Objekt mit bestimmten Koordinaten (x, y) und Abmessungen (Breite, Höhe) erstellen und es dann beim Aufruf der Read-Methode an die Eigenschaft BarcodeReaderOptions.CropArea übergeben.

Welche Leistungsverbesserungen kann ich durch die Verwendung von Crop Regions erwarten?

Die IronBarcode-Funktion zum Zuschneiden von Bereichen kann die Leistung beim Lesen von Barcodes im Vergleich zum Scannen ganzer Bilder bis zu 5x verbessern. Dies ist besonders vorteilhaft bei der Arbeit mit mehrseitigen Dokumenten oder hochauflösenden Bildern, bei denen die Position der Barcodes vorhersehbar ist.

Wie kann ich die richtigen Koordinaten für meine Anbauregion finden?

Sie können die Koordinaten des Bildausschnitts mit Bildbearbeitungsprogrammen wie Microsoft Paint, GIMP oder Photoshop ermitteln. Öffnen Sie einfach Ihr Bild, bewegen Sie den Cursor an die gewünschte linke obere Ecke des Bereichs, notieren Sie die x,y-Koordinaten und suchen Sie dann die Koordinaten der rechten unteren Ecke, um die Breite und Höhe für Ihr Rechteck in IronBarcode zu bestimmen.

Wann ist die Verwendung von Crop-Regionen besonders vorteilhaft?

Zuschneidebereiche in IronBarcode sind besonders wertvoll bei der Verarbeitung von Bildern mit mehreren Barcodes, komplexen Hintergründen, mehrseitigen Dokumenten oder hochauflösenden Bildern, bei denen die Position der Barcodes konsistent und vorhersehbar ist.

Hairil Hasyimi Bin Omar
Software Ingenieur
Wie alle großen Ingenieure ist Hairil ein leidenschaftlicher Lerner. Er verfeinert sein Wissen in C#, Python und Java, um Iron Software-Teammitgliedern Mehrwert zu bieten. Hairil kam von der Universiti Teknologi MARA in Malaysia, wo er seinen Bachelor in Chemie- und Verfahrenstechnik abschloss.
Bereit anzufangen?
Nuget Downloads 2,002,059 | Version: 2025.12 gerade veröffentlicht