IRONBARCODE VERWENDEN

Verwendung von Barcode-Scannern in C# Windows-Anwendungen

Aktualisiert 20. Januar 2024
Teilen Sie:

In diesem Tutorial wird gezeigt, wie man QR-Codes und Barcodes in C#-Konsolenanwendungen und .NET-Windows-Forms-Anwendungen scannt, wobei die IronBarcode-Bibliothek als Beispiel dient.

Mit der IronBarcode-Bibliothek können mehrere Barcodes gleichzeitig gescannt und gelesen werden, und es können auch unvollkommene Bilder erfolgreich gescannt werden. Lassen Sie uns zunächst klären, was ein Barcode-Scanner ist.

Was ist ein Barcode-Scanner?

Ein Barcode ist ein quadratisches oder rechteckiges Bild, das aus einer Reihe von parallelen schwarzen Linien und weißen Zwischenräumen unterschiedlicher Breite besteht. Ein Barcode-Scanner oder Barcode-Leser ist ein Gerät, das gedruckte Barcodes lesen, die im Barcode enthaltenen Daten entschlüsseln und an einen Computer senden kann.

Die folgenden Schritte zeigen Ihnen, wie Sie einen Barcode-Scanner mit Hilfe der IronBarcode Library erstellen können.

Wie man Barcodes in C# liest;

  • Erstellen eines .NET Windows Forms-Anwendungsprojekts in Microsoft Visual Studio
  • Installieren Sie die Barcode-Bibliothek
  • Lesen Sie jeden Barcode oder QR-Code
  • Lesen Sie mehrere Barcodes oder QR-Codes mit einem einzigen Scanvorgang
  • Ermöglichen Sie IronBarcode das Lesen von unvollkommenen Scans und Fotos

1. Erstellen einer Windows Forms-Anwendung in Microsoft Visual Studio

Öffnen Sie Visual Studio > Klicken Sie auf Neues Projekt erstellen > Wählen Sie Windows Forms-Anwendungsvorlage > Drücken Sie Weiter > Benennen Sie das Projekt > Drücken Sie Weiter > Wählen Sie Ihr .NET-Framework als Ziel aus > Klicken Sie auf die Schaltfläche Erstellen.

Nachdem Sie das Projekt erstellt haben, entwerfen Sie das Formular wie folgt in der Visual Studio Toolbox: PictureBox-, Label-, TextBox- und Button-Steuerelemente.

How to Use Barcode Scanners in C# Windows Application, Abbildung 1: Barcode Scanner

Barcode-Scanner

2. Installieren Sie die Barcode .NET Bibliothek in C#;

Die Barcode-Bibliothek kann auf eine der folgenden drei Arten installiert werden:

1. Paketmanager-Konsole

Schreiben Sie den folgenden Befehl in die Paketmanager-Konsole. Es wird das Paket für Sie herunterladen und installieren.

Install-Package BarCode

2. NuGet Packages Manager Lösung

Sie können die Barcode Library auch mit Hilfe der NuGet Package Solution installieren. Folgen Sie einfach diesen Schritten:

Klicken Sie auf Tools > NuGet Package Manager > NuGet-Pakete für die Lösung verwalten.

Dadurch wird der NuGet Package Manager für Sie geöffnet. Klicken Sie auf Durchsuchen und suchen Sie nach Barcode, dann installieren Sie die Klassenbibliothek.

Als Alternative kann die IronBarCode.Dll kann heruntergeladen und Ihrem Projekt als Referenz hinzugefügt werden.

Fügen Sie nach dem Herunterladen die folgenden Referenzen zu Ihrem Barcode-Leseprojekt hinzu.

using IronBarCode;
using IronBarCode;
Imports IronBarCode
VB   C#

3. Lesen Sie jeden Barcode oder QR-Code

Das Lesen eines Barcodes oder QR-Codes in .NET ist mit der IronBarcode-Bibliothek unglaublich einfach .NET Barcode-Leser.

Barcode-Scanner

Suchen Sie in Ihrem Projekt nach dem Bild, das Sie lesen möchten. Es wird in der PictureBox geöffnet; klicken Sie nun auf "Code scannen". Der Text wird im Textfeld angezeigt.

Hier ist der Code für die Schaltfläche "Durchsuchen" zum Öffnen eines Bildes:

// open file dialog   
OpenFileDialog open = new OpenFileDialog();  
// image filters  
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)
*.jpg;*.png;*.jpeg;*.gif;*.bmp";
if (open.ShowDialog() == DialogResult.OK) {  
    // display image in picture box
    pictureBox1.Image = new Bitmap(open.FileName); 
    // store image file path in class data member. Initialize it as string ImageFileName;
    ImageFileName = open.FileName; 
}
// open file dialog   
OpenFileDialog open = new OpenFileDialog();  
// image filters  
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)
*.jpg;*.png;*.jpeg;*.gif;*.bmp";
if (open.ShowDialog() == DialogResult.OK) {  
    // display image in picture box
    pictureBox1.Image = new Bitmap(open.FileName); 
    // store image file path in class data member. Initialize it as string ImageFileName;
    ImageFileName = open.FileName; 
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Der Code für die Schaltfläche "Code scannen":

BarcodeResult Result = BarcodeReader.Read(ImageFileName);
textBox1.Text = Result.Text;
BarcodeResult Result = BarcodeReader.Read(ImageFileName);
textBox1.Text = Result.Text;
Dim Result As BarcodeResult = BarcodeReader.Read(ImageFileName)
textBox1.Text = Result.Text
VB   C#

Der Barcodescanner zeigt die Barcodedaten im Textfeld wie folgt an:

How to Use Barcode Scanners in C# Windows Application, Abbildung 2: Barcode-Bild mit C# gescannt werden

Barcode-Bild mit C# scannen

QR-Code-Scanner

In diesem Abschnitt wird gezeigt, wie die IronBarcode Library in der Praxis mit schiefen QR-Codes umgeht. Obwohl der schiefwinklige QR-Code von der Software verarbeitet und gelesen werden kann lesen methode kann es dennoch mehr Zeit in Anspruch nehmen, sie zu lösen. Die IronBarcode-Bibliothek bietet eine angepasste Möglichkeit zur Verwendung von barcodeLeserOptionen als zusätzlichen Parameter, um mit solchen Bildeingaben umzugehen. Der Code lautet wie folgt:

// Choose which filters are to be applied (in order);
var filtersToApply = new ImageFilterCollection() {
    new SharpenFilter(),
    new InvertFilter(),
    new ContrastFilter(),
    new BrightnessFilter(),
    new AdaptiveThresholdFilter(),
    new BinaryThresholdFilter()
};

BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
    // Set chosen filters in BarcodeReaderOptions:
    ImageFilters = filtersToApply,

    ExpectBarcodeTypes = BarcodeEncoding.QRCode 
 BarcodeEncoding.Code128,
};
BarcodeResult Result = BarcodeReader.Read(ImageFileName, myOptionsExample);
textBox1.Text = Result.Text;
// Choose which filters are to be applied (in order);
var filtersToApply = new ImageFilterCollection() {
    new SharpenFilter(),
    new InvertFilter(),
    new ContrastFilter(),
    new BrightnessFilter(),
    new AdaptiveThresholdFilter(),
    new BinaryThresholdFilter()
};

BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
    // Set chosen filters in BarcodeReaderOptions:
    ImageFilters = filtersToApply,

    ExpectBarcodeTypes = BarcodeEncoding.QRCode 
 BarcodeEncoding.Code128,
};
BarcodeResult Result = BarcodeReader.Read(ImageFileName, myOptionsExample);
textBox1.Text = Result.Text;
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Nach dem Öffnen des schiefen QR-Code-Bildes wird die Ausgabe wie folgt aussehen:

How to Use Barcode Scanners in C# Windows Application, Abbildung 4: Skewed QrCode Image

Schiefes QrCode-Bild

Lesen mehrerer Barcodes in einem einzigen Scanvorgang

PDF-Dokumente

Barcode-Bilder können aus einer PDF-Datei gescannt werden und jedes Ergebnis kann nach Wunsch angezeigt werden. Mit dem folgenden Beispielcode können Sie mehrere Barcodes aus einer PDF-Datei lesen.

// Multiple barcodes may be scanned up from a single document or image.  A PDF document may also used as the input 
imagePagedBarcodeResult [] PDFResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (var PageResult in PDFResults) { 
    string Value = PageResult.Value;
    int PageNum = PageResult.PageNumber;
    System.Drawing.Bitmap Img = PageResult.BarcodeImage;
    BarcodeEncoding BarcodeType = PageResult.BarcodeType;
    byte [] Binary = PageResult.BinaryValue;
    Console.WriteLine(PageResult.Value + " on page " + PageNum);
}
// Multiple barcodes may be scanned up from a single document or image.  A PDF document may also used as the input 
imagePagedBarcodeResult [] PDFResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (var PageResult in PDFResults) { 
    string Value = PageResult.Value;
    int PageNum = PageResult.PageNumber;
    System.Drawing.Bitmap Img = PageResult.BarcodeImage;
    BarcodeEncoding BarcodeType = PageResult.BarcodeType;
    byte [] Binary = PageResult.BinaryValue;
    Console.WriteLine(PageResult.Value + " on page " + PageNum);
}
' Multiple barcodes may be scanned up from a single document or image.  A PDF document may also used as the input 
Dim PDFResults() As imagePagedBarcodeResult = BarcodeReader.ReadPdf("MultipleBarcodes.pdf")
' Work with the results
For Each PageResult In PDFResults
	Dim Value As String = PageResult.Value
	Dim PageNum As Integer = PageResult.PageNumber
	Dim Img As System.Drawing.Bitmap = PageResult.BarcodeImage
	Dim BarcodeType As BarcodeEncoding = PageResult.BarcodeType
	Dim Binary() As Byte = PageResult.BinaryValue
	Console.WriteLine(PageResult.Value & " on page " & PageNum)
Next PageResult
VB   C#

Barcode und QR-Code in PDF-Dateien:

How to Use Barcode Scanners in C# Windows Application, Abbildung 3: C# - Lesen von Barcodes aus einem PDF Ergebnisse

**C# - Lesen von Barcodes aus einem PDF-Ergebnis

Lesen von Barcodes aus unvollkommenen Bildern

In der Praxis werden Barcodes oft mit Mängeln in Bildern, Scans, Miniaturansichten oder Fotos gefunden und können digitales Rauschen enthalten oder verzerrt sein. In diesem Abschnitt wird gezeigt, wie Sie Barcode-Daten aus Miniaturansichten lesen können.

Vorschaubilder

Die IronBarcode Library verwendet die C# Barcode Generatordas sogar in der Lage ist, ein beschädigtes Miniaturbild eines Strichcodes zu lesen.

How to Use Barcode Scanners in C# Windows Application, Abbildung 5: Automatische Korrektur der Barcode-Miniaturbildgröße. Datei lesbar mit IronBarcode in C#

Automatische Korrektur der Barcode-Miniaturbildgröße. Datei lesbar mit IronBarcode in C#

Es erkennt automatisch Strichcode-Bilder, die zu klein sind, um einen echten Strichcode vernünftig darzustellen, und skaliert und bereinigt dann das gesamte digitale Rauschen, das mit dem Thumbnail verbunden ist, so dass sie wieder lesbar werden.

// Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
BarcodeResult SmallResult = BarcodeReader.Read("ThumbnailOfBarcode.gif");
// Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
BarcodeResult SmallResult = BarcodeReader.Read("ThumbnailOfBarcode.gif");
' Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
Dim SmallResult As BarcodeResult = BarcodeReader.Read("ThumbnailOfBarcode.gif")
VB   C#

Zusammenfassung

IronBarcode ist eine vielseitige .NET Software-Bibliothek und C# QR Code Generator zum Scannen und Lesen einer Vielzahl von Barcode-Bildformaten, und zwar unabhängig davon, ob es sich bei diesen Barcodes um perfekte Bildschirmabzüge oder um Fotos, Scans oder andere unvollkommene Bilder der realen Welt. Darüber hinaus bietet IronBarcode eine Vielzahl von Anpassungsmöglichkeiten, um die Lesegeschwindigkeit von Barcodes zu erhöhen, z. B anbaugebiete oder multithreadingund die Genauigkeit des ML-Modells. Besuchen Sie die Seite mit den offiziellen Dokumenten für weitere Informationen über IronBarcode.

Derzeit können Sie beim Kauf von die komplette Iron Suiteerhalten Sie fünf Bibliotheken zum Preis von nur zwei.

< PREVIOUS
Barcode Generator .NET Tutorial
NÄCHSTES >
Wie man Barcodes in ASP.NET mit C# erzeugt

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

Gratis NuGet-Download Downloads insgesamt: 1,246,703 Lizenzen anzeigen >