IRONBARCODE VERWENDEN

C# Barcode-Scanner Schritt-für-Schritt-Anleitung

Jordi Bardia
Jordi Bardia
20. Oktober 2022
Aktualisiert 7. Februar 2024
Teilen Sie:

In diesem Tutorial wird gezeigt, wie man einen Barcode-Scanner mit Hilfe einer Drittanbieter-Bibliothek erstellt. Für diesen Zweck stehen mehrere Bibliotheken zur Verfügung, aber einige sind kostenpflichtig, andere bieten weniger Funktionalität und wieder andere sind schwierig zu implementieren. Es ist eine anspruchsvolle Aufgabe, eine sehr umfassende und nützliche Bibliothek zu finden, die kostenlos, effizient und einfach zu implementieren ist.

Aus diesem Grund werden wir IronBarcode verwenden, da es am besten für die Entwicklung eines .NET Barcode-Scanners geeignet ist. Sie hat außerdem den zusätzlichen Vorteil, dass sie kostenlos entwickelt werden kann, sehr effizient ist und sich leicht implementieren lässt. IronBarcode ermöglicht Entwicklern das Lesen und Schreiben von Barcodes und QR-Codes in .NET-Anwendungen und Websites. Das Lesen oder Schreiben von Strichcodes erfordert mit dieser Bibliothek nur eine einzige Codezeile.

Die .NET Barcode-Bibliothek liest und schreibt die meisten Barcode- und QR-Code-Standards. Zu den unterstützten Barcode-Typen gehören Code 39/93/128, UPC A/E, EAN 8/13, ITF, RSS 14 / Expanded, Databar, Codabar, Aztec, Data Matrix, MaxiCode, PDF417, MSI, Plessey, USPS und QR. Die Barcode-Ergebnisdaten umfassen Typ-, Text-, Binärdaten, Seiten- und Bilddateien.

Die API zum Schreiben von Strichcodes prüft und verifiziert Format, Länge, Nummer und Prüfsumme, um automatisch Kodierungsfehler zu vermeiden. Der Barcode-Schreiber ermöglicht das Styling, die Größenanpassung, Ränder, Rahmen, das Umfärben und das Hinzufügen von Textanmerkungen. Der Barcode-Schreiber kann Bilddateien wie BMP, PNG, GIF, TIFF und JPG beschreiben. Es kann auch in PDF oder HTML-Dateien schreiben.

Lassen Sie uns unseren Barcode-Scanner erstellen, um ihn besser zu verstehen.

Erstellen eines Visual Studio-Projekts

Erstellen Sie zunächst ein Visual Studio-Projekt für die Entwicklung einer Demo-Anwendung. Sie können auch ein bestehendes Projekt öffnen.

Gehen Sie wie folgt vor, um ein neues Konsolenanwendungsprojekt zu erstellen und sich auf die Kernfunktionen zu konzentrieren. Derselbe Code kann in Web-API-, MVC-, Web Forms- oder Windows Forms-Anwendungen implementiert werden.

  1. Visual Studio öffnen

  2. Klicken Sie auf Neues Projekt erstellen

  3. Vorlage auswählen, auf die Schaltfläche Weiter klicken

  4. Benennen Sie das Projekt und klicken Sie auf die Weiter-Taste

  5. Wählen Sie das Ziel-Framework aus und klicken Sie auf die Schaltfläche Weiter.

  6. Klicken Sie auf die Erstellen-Schaltfläche, klicken Sie auf die Weiter-Schaltfläche

    Ein neues Projekt wird wie unten gezeigt erstellt:

    C# Barcode-Scanner Schritt-für-Schritt-Tutorial, Abbildung 1: Konsolenanwendung

    Konsolenanwendung

    Der nächste Schritt besteht darin, das IronBarcode NuGet-Paket zu installieren, um seine Funktionalitäten zu nutzen.

Installieren Sie das NuGet-Paket von IronBarcode

Sie können die Bibliothek über die Paket-Manager-Konsole, die NuGet-Paket-Manager-Lösungen oder direkt von der NuGet BarCode-Paketseite installieren.

Folgen Sie den nachstehenden Schritten:

  1. Klicken Sie auf Tools > NuGet-Paket-Manager > Paket-Manager-Konsole.

    C# Barcode-Scanner Schritt-für-Schritt-Anleitung, Abbildung 2: Paket-Manager-Konsole UI

    Paket-Manager-Konsole UI

  2. Schreiben Sie den folgenden Befehl
Install-Package BarCode

Das Paket wird installiert.

Lassen Sie uns nun einen Code zum Scannen eines Barcode-Bildes schreiben.

Scannen eines Barcodes aus einer Bilddatei

Fügen Sie den folgenden Namensraum hinzu

using IronBarCode;
using IronBarCode;
Imports IronBarCode
$vbLabelText   $csharpLabel

Als Nächstes schreiben Sie den folgenden Code in die Hauptfunktion, um Barcode-Daten aus einem Bild zu lesen.

var myBarcode = BarcodeReader.Read(@"D:\Barcode Images\mybarcode.jpeg");
Console.WriteLine(myBarcode);
var myBarcode = BarcodeReader.Read(@"D:\Barcode Images\mybarcode.jpeg");
Console.WriteLine(myBarcode);
Dim myBarcode = BarcodeReader.Read("D:\Barcode Images\mybarcode.jpeg")
Console.WriteLine(myBarcode)
$vbLabelText   $csharpLabel

Die BarcodeReader-Klasse stellt eine Read-Funktion zur Verfügung, die einen Dateipfad als Argument entgegennimmt. Diese Funktion liest das Bild und gibt die Barcodedaten zurück. Diese Methode liest Barcodes aus einer BMP, PNG, GIF, TIFF oder JPG mit detaillierten Einstellungen für die Entwicklerkontrolle, um die Leistung gegen die Genauigkeit für ihren spezifischen Anwendungsfall auszubalancieren.

Der Pfad enthält das folgende Barcode-Bild, das die Anwendung scannen wird.

Barcode-Bild

C# Barcode-Scanner Schritt-für-Schritt-Anleitung, Abbildung 3: Das Barcode-Bild, das in dieser Konsolenanwendung verwendet wird

Das in dieser Konsolenanwendung verwendete Barcode-Bild

Lesen wir dieses Strichcodebild, um zu sehen, ob dieses Programm das richtige Ergebnis liefert.

Ausgabe

C# Barcode Scanner Schritt-für-Schritt-Anleitung, Abbildung 4: Konsolenausgabe beim Ausführen der Anwendung

Die Konsolenausgabe bei der Ausführung der Anwendung

Es ist zu erkennen, dass das Programm eine genaue Ausgabe erzeugt hat.

Scannen eines Barcodes aus einer PDF-Datei

Es gibt viele Situationen, in denen es notwendig ist, einen Barcode aus einer PDF-Rechnung zu scannen. In diesem Beispiel scannen wir den Barcode von der folgenden Rechnung.

PDF-Dokument

C# Barcode Scanner Schritt-für-Schritt-Anleitung, Abbildung 5: Eine Rechnung im PDF-Format

Eine Rechnung im PDF-Format

Der folgende Codeausschnitt soll den Barcode eines PDF-Dokuments scannen:

var myBarcode = BarcodeReader.ReadPdf(@"D:\Barcode Images\invoice.pdf");
foreach(var barcodeData in myBarcode)
{
    Console.WriteLine(barcodeData.Value);
}
var myBarcode = BarcodeReader.ReadPdf(@"D:\Barcode Images\invoice.pdf");
foreach(var barcodeData in myBarcode)
{
    Console.WriteLine(barcodeData.Value);
}
Dim myBarcode = BarcodeReader.ReadPdf("D:\Barcode Images\invoice.pdf")
For Each barcodeData In myBarcode
	Console.WriteLine(barcodeData.Value)
Next barcodeData
$vbLabelText   $csharpLabel

Die BarcodeReader-Klasse bietet die ReadPdf-Funktion, die einen Dateipfad als Argument annimmt. Diese Funktion sucht nach einem Barcode-Bild in einer PDF-Datei, scannt den gesamten Barcode und gibt dessen Daten in Form eines Arrays zurück. Diese Funktion liest Strichcodes aus jedem im Dokument eingebetteten Bild.

eine foreach-Schleife verwendet, um die Daten des Barcodes in der Konsole auszugeben.

Ausgabe

Die Rechnungsnummer wird auf der Konsole ausgedruckt.

C# Barcode Scanner Schritt-für-Schritt-Anleitung, Abbildung 6: Die Konsolenausgabe zeigt die Rechnungsnummer an

Die Konsolenausgabe zeigt die Rechnungsnummer an

Scannen von Barcodes aus mehreren Dateien

In diesem Beispiel wird gezeigt, wie mehrere Barcodes aus Bilddateien gleichzeitig gescannt werden können.

Barcode-Bilder

C# Barcode-Scanner Schritt-für-Schritt-Anleitung, Abbildung 7: Barcode-Bilder, die im folgenden Beispiel verwendet werden

Barcode-Bilder, die im folgenden Beispiel verwendet werden

Betrachten Sie die folgenden Codeschnipsel, die mehrere Barcodes lesen und ihr Ergebnis mit Multithreading scannen.

List<string> barcodeList = new List<string>();
barcodeList.Add(@"D:\Barcode Images\barcode1.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode2.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode3.jpg");
var batchResults =  BarcodeReader.ReadAsync(barcodeList);
// Work with the results
foreach (var result in batchResults)
{
    string barcodeValue = result.Text;
}
List<string> barcodeList = new List<string>();
barcodeList.Add(@"D:\Barcode Images\barcode1.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode2.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode3.jpg");
var batchResults =  BarcodeReader.ReadAsync(barcodeList);
// Work with the results
foreach (var result in batchResults)
{
    string barcodeValue = result.Text;
}
Dim barcodeList As New List(Of String)()
barcodeList.Add("D:\Barcode Images\barcode1.jpg")
barcodeList.Add("D:\Barcode Images\barcode2.jpg")
barcodeList.Add("D:\Barcode Images\barcode3.jpg")
Dim batchResults = BarcodeReader.ReadAsync(barcodeList)
' Work with the results
For Each result In batchResults
	Dim barcodeValue As String = result.Text
Next result
$vbLabelText   $csharpLabel

Zunächst wird eine Liste erstellt, die den Dateipfad aller Barcode-Bilder enthält. Als nächstes wird die ReadAsync-Funktion aufgerufen, die einen List&lt;string&gt;-Typ als Argument übernimmt und die Daten zurückgibt. Diese Methode liest Barcodes von mehreren Bildern parallel. Es werden mehrere Threads gestartet und automatisch verwaltet, um die Leistung bei Batch-Leseaufgaben für Barcodes zu verbessern.

QR-Code scannen

Die Verwendung von QR-Codes nimmt rapide zu. Daher wird in diesem Abschnitt gezeigt, wie man QR-Codes mit C# scannt.

QR-Code

C# Barcode-Scanner Schritt-für-Schritt-Anleitung, Abbildung 8: Der in dieser Demonstration verwendete QR-Code

Der in dieser Demonstration verwendete QR-Code

Betrachten Sie das folgende Codebeispiel:

var qrCodeResult = BarcodeReader.Read(@"D:\Barcode Images\QRcode.jpeg");
foreach (var result in qrCodeResult)
{
    Console.WriteLine(result.Text);
}
var qrCodeResult = BarcodeReader.Read(@"D:\Barcode Images\QRcode.jpeg");
foreach (var result in qrCodeResult)
{
    Console.WriteLine(result.Text);
}
Dim qrCodeResult = BarcodeReader.Read("D:\Barcode Images\QRcode.jpeg")
For Each result In qrCodeResult
	Console.WriteLine(result.Text)
Next result
$vbLabelText   $csharpLabel

Die gleiche Read-Funktion, wie oben besprochen, wird verwendet, um den QR-Code zu lesen. Diese Einfachheit bietet die IronBarcode-Bibliothek. So kann dieselbe Funktion und derselbe Code für verschiedene Bildquellen verwendet werden.

Ausgabe

C# Barcode-Scanner Schritt-für-Schritt-Anleitung, Abbildung 9: Die Konsole des QR-Code-Lesers

Die Konsolenausgabe des QR-Code-Lesers

Zusammenfassung

Dieses Tutorial demonstriert eine sehr einfache Methode zum Scannen von Barcodes aus einem einzelnen Bild, zum Scannen von Barcodes aus einem PDF-Dokument und zum Scannen von Barcodes aus mehreren Bildern und mehreren Dokumenten parallel. Wir haben dieselbe Funktion für verschiedene Funktionalitäten verwendet. Es bietet gleichzeitig Leistung und Benutzerfreundlichkeit. IronBarcode bietet die Funktionalität zur Generierung von Barcodes und QR-Codes mit verschiedenen Konfigurationen. Es gibt so viele Funktionen, dass sie nicht in einem einzigen Artikel behandelt werden können. Bitte klicken Sie auf die Dokumentationsseite, um IronBarcode weiter zu erkunden.

IronBarcode ist Teil der Iron Software Suite. Diese Suite enthält weitere sehr nützliche Bibliotheken, wie IronPDF zum Lesen und Schreiben von PDF-Dateien, IronXL zur Bearbeitung von Excel-Dateien, IronOCR zum Lesen von Text aus Bildern und IronWebScraper zum Extrahieren von Daten aus verschiedenen Websites. Sie können die komplette Iron Suite zum Preis von zwei einzelnen Bibliotheken erwerben.

Jordi Bardia
Software-Ingenieur
Jordi beherrscht vor allem Python, C# und C++. Wenn er seine Fähigkeiten bei Iron Software nicht einsetzt, programmiert er Spiele. Durch seine Mitverantwortung für Produkttests, Produktentwicklung und Forschung trägt Jordi wesentlich zur kontinuierlichen Produktverbesserung bei. Die vielseitigen Erfahrungen, die er sammelt, bieten ihm immer wieder neue Herausforderungen, und er sagt, dass dies einer seiner Lieblingsaspekte bei Iron Software ist. Jordi wuchs in Miami, Florida, auf und studierte Informatik und Statistik an der University of Florida.
< PREVIOUS
Einen QR-Code für einen Link erstellen (C# Tutorial)
NÄCHSTES >
.NET QR Code Generator (Codebeispiel-Tutorial)

Sind Sie bereit, loszulegen? Version: 2025.4 gerade veröffentlicht

Lizenzen anzeigen >