Barcode .NET-Komponenten-Tutorial mit IronBarcode
Eine Barcode- .NET Komponente ist eine verwaltete Codebibliothek, mit der Sie Barcodes in C#-Anwendungen mit nur wenigen Codezeilen generieren und lesen können. IronBarcode unterstützt alle wichtigen Symbologien – Code 128, QR, Data Matrix, EAN, UPC und mehr – und läuft unter Windows, Linux und macOS ohne zusätzliche Laufzeitabhängigkeiten.
Installieren Sie es über NuGet und generieren Sie innerhalb weniger Minuten Barcodes:
Install-Package BarCode
Install-Package BarCode
Was ist eine Barcode .NET Komponente?
Eine Barcode- .NET Komponente ist eine Softwarebibliothek, die als NuGet Paket bereitgestellt wird und über eine übersichtliche API Funktionen zur Barcode-Generierung und zum Lesen bietet. Im Gegensatz zu Barcode-Schriftarten, die manuelle Prüfsummenberechnungen und komplexe Formatierungsregeln erfordern, übernimmt eine spezielle Komponente die gesamte Codierungslogik intern.
Die IronBarcode Bibliothek bietet zwei primäre Einstiegspunkte:
BarcodeWriter-- erstellt Barcode-Bilder, PDFs und HTML aus Text- oder numerischen DatenBarcodeReader-- scannt Bilder, PDFs und TIFF-Dateien mit mehreren Einzelbildern, um Barcode-Werte zu extrahieren
Dank dieser bidirektionalen Bauweise können Sie sowohl Barcodes auf Etiketten drucken als auch diese von Dokumenten innerhalb derselben Bibliothek wieder einscannen. Dies ist unerlässlich für die Bestandsverwaltung, die Dokumentenverfolgung, die Crystal Reports-Integration und die Datenautomatisierung.
Unterstützte Symboliken umfassen:
- 1D linear : Code 128, Code 39, Code 93, ITF-14, EAN-13, EAN-8, UPC-A, UPC-E
- 2D-Matrix : QR-Code, Data Matrix, PDF417, Aztec
- GS1-Varianten : GS1-128, GS1 DataBar
In Fertigungssystemen wird typischerweise Code 128 zur Produktverfolgung verwendet, da er alphanumerische Daten effizient kodiert. Im Gesundheitswesen wird häufig auf Data Matrix für die Medikamentenkennzeichnung zurückgegriffen, da es auch bei sehr kleinen Größen gut druckt. Kassensysteme im Einzelhandel scannen EAN-13- und UPC-A-Barcodes an der Kasse. Die Wahl der richtigen Symbolik für Ihren Anwendungsfall ist eine der ersten Entscheidungen, die Sie bei der Integration der Barcode-Funktionalität treffen müssen.
Wie installiert man IronBarcode in einem .NET -Projekt?
Die Installation von IronBarcode dauert mit dem NuGet Paketmanager in Visual Studio oder der .NET -Befehlszeilenschnittstelle weniger als zwei Minuten.
Paket-Manager-Konsole (Visual Studio):
Install-Package BarCode
Install-Package BarCode
.NET CLI :
dotnet add package BarCode
dotnet add package BarCode

Nach der Installation des Pakets fügen Sie den Namespace am Anfang jeder Datei hinzu, die Barcode-Funktionalität verwendet:
using IronBarCode;
using IronBarCode;
Imports IronBarCode
IronBarcode ist for .NET Framework 4.6.2 und höher, .NET Core 3.1 und höher sowie .NET 5 bis .NET 10 ausgelegt. Es läuft unter Windows, Linux und macOS, sodass derselbe Code in Cloud-Containern, auf lokalen Servern und auf Entwickler-Workstations ohne plattformspezifische Konfiguration funktioniert.
Für ASP.NET Core Anwendungen ist keine Middleware-Registrierung erforderlich. Sie rufen die API direkt aus Controllern, Hintergrunddiensten oder Razor Pages auf. Windows Forms- und WPF-Anwendungen erhalten den Zugriff auf die gleiche Weise – durch Hinzufügen des Namespace und anschließendes Aufrufen der Methoden.

Eine detaillierte Installationsanleitung, einschließlich der Offline-Konfiguration von NuGet Feeds und Proxy-Einstellungen, finden Sie im IronBarcode Leitfaden für Einsteiger .
Wie generiert man ein Barcode-Bild in C#?
Das Generieren eines Barcodes mit IronBarcode erfordert drei Schritte: Auswahl der Kodierung, Festlegung des Werts und Speichern der Ausgabe. Das folgende Beispiel erstellt einen Code-128-Barcode und speichert ihn sowohl als PNG-Bild als auch als PDF-Dokument:
using IronBarCode;
// Create a Code 128 barcode encoding a product identifier
var barcode = BarcodeWriter.CreateBarcode("PRD-12345-2024", BarcodeEncoding.Code128);
// Set the output dimensions in pixels
barcode.ResizeTo(400, 100);
// Add human-readable text beneath the bars
barcode.AddBarcodeValueTextBelowBarcode();
// Export to PNG for screen display and label printing
barcode.SaveAsImage("product-barcode.png");
// Export to PDF for document embedding
barcode.SaveAsPdf("product-barcode.pdf");
using IronBarCode;
// Create a Code 128 barcode encoding a product identifier
var barcode = BarcodeWriter.CreateBarcode("PRD-12345-2024", BarcodeEncoding.Code128);
// Set the output dimensions in pixels
barcode.ResizeTo(400, 100);
// Add human-readable text beneath the bars
barcode.AddBarcodeValueTextBelowBarcode();
// Export to PNG for screen display and label printing
barcode.SaveAsImage("product-barcode.png");
// Export to PDF for document embedding
barcode.SaveAsPdf("product-barcode.pdf");
Imports IronBarCode
' Create a Code 128 barcode encoding a product identifier
Dim barcode = BarcodeWriter.CreateBarcode("PRD-12345-2024", BarcodeEncoding.Code128)
' Set the output dimensions in pixels
barcode.ResizeTo(400, 100)
' Add human-readable text beneath the bars
barcode.AddBarcodeValueTextBelowBarcode()
' Export to PNG for screen display and label printing
barcode.SaveAsImage("product-barcode.png")
' Export to PDF for document embedding
barcode.SaveAsPdf("product-barcode.pdf")
Die Methode ResizeTo() legt die Pixelabmessungen präzise fest, was wichtig ist, wenn Sie Etiketten mit einer bestimmten DPI-Zahl drucken. Der Aufruf AddBarcodeValueTextBelowBarcode() fügt unter den Balken einen für Menschen lesbaren Text hinzu, wodurch die manuelle Überprüfung in Lager- und Einzelhandelsumgebungen erleichtert wird.
Barcode-Ausgabeformate


IronBarcode exportiert in die Formate PNG, JPEG, GIF, TIFF, BMP, PDF, HTML und Base64-Strings. Das Base64-Format eignet sich besonders gut zum Einbetten von Barcodes in API-Antworten, die ein Frontend dynamisch rendert, ohne Dateien auf die Festplatte zu schreiben.
Wie generiert man einen QR-Code in C#?
Für QR-Codes bietet IronBarcode die Klasse QRCodeWriter mit integrierter Unterstützung für Fehlerkorrekturstufen und Modulgrößensteuerung:
using IronBarCode;
// Generate a QR code from a URL with 500px dimensions
var qrCode = QRCodeWriter.CreateQrCode("https://example.com/product/12345", 500);
// Save the QR code to a PNG file
qrCode.SaveAsImage("product-qr.png");
using IronBarCode;
// Generate a QR code from a URL with 500px dimensions
var qrCode = QRCodeWriter.CreateQrCode("https://example.com/product/12345", 500);
// Save the QR code to a PNG file
qrCode.SaveAsImage("product-qr.png");
Imports IronBarCode
' Generate a QR code from a URL with 500px dimensions
Dim qrCode = QRCodeWriter.CreateQrCode("https://example.com/product/12345", 500)
' Save the QR code to a PNG file
qrCode.SaveAsImage("product-qr.png")
QR-Codes können URLs, Klartext, vCard-Kontaktdaten, WLAN-Zugangsdaten und beliebige Bytefolgen kodieren. Die Seite mit Beispielen zur Barcode-Generierung behandelt zusätzliche Kodierungsszenarien, darunter Data Matrix und PDF417.
Wie liest man Barcodes aus Bildern?
Das Lesen von Barcodes aus einem Bild ist genauso einfach wie das Schreiben. Die Methode BarcodeReader.Read() akzeptiert einen Dateipfad, Stream, Bitmap oder IronSoftware.Drawing.AnyBitmap, und gibt eine Sammlung BarcodeResults zurück:
using IronBarCode;
// Read all barcodes from a scanned document image
BarcodeResults results = BarcodeReader.Read("scanned-document.png");
// Iterate over every detected barcode
foreach (BarcodeResult result in results)
{
string value = result.Value;
BarcodeEncoding type = result.BarcodeType;
Console.WriteLine($"Detected {type}: {value}");
}
using IronBarCode;
// Read all barcodes from a scanned document image
BarcodeResults results = BarcodeReader.Read("scanned-document.png");
// Iterate over every detected barcode
foreach (BarcodeResult result in results)
{
string value = result.Value;
BarcodeEncoding type = result.BarcodeType;
Console.WriteLine($"Detected {type}: {value}");
}
Imports IronBarCode
' Read all barcodes from a scanned document image
Dim results As BarcodeResults = BarcodeReader.Read("scanned-document.png")
' Iterate over every detected barcode
For Each result As BarcodeResult In results
Dim value As String = result.Value
Dim type As BarcodeEncoding = result.BarcodeType
Console.WriteLine($"Detected {type}: {value}")
Next
Der Reader führt automatisch Vorverarbeitungen der Bilder durch, um häufige Scanprobleme zu korrigieren: Rotation, Schräglage, Rauschen, geringer Kontrast und perspektivische Verzerrung. Das bedeutet, dass Sie die Rohdaten des Scanners direkt weitergeben können, ohne sie selbst vorzuverarbeiten.
Scannen von einem echten Dokument

Ausgabe lesen

Wie konfiguriert man die Barcode-Leseoptionen?
Für Scanvorgänge mit hohem Durchsatz oder anspruchsvollen Szenarien bietet Ihnen BarcodeReaderOptions eine detaillierte Kontrolle über den Lesealgorithmus:
using IronBarCode;
var options = new BarcodeReaderOptions
{
// Balance accuracy and processing time
Speed = ReadingSpeed.Balanced,
// Detect multiple barcodes in one pass
ExpectMultipleBarcodes = true,
// Limit the search to 1D formats for faster processing
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
};
// Read from a multi-page PDF warehouse inventory report
var results = BarcodeReader.Read("warehouse-inventory.pdf", options);
using IronBarCode;
var options = new BarcodeReaderOptions
{
// Balance accuracy and processing time
Speed = ReadingSpeed.Balanced,
// Detect multiple barcodes in one pass
ExpectMultipleBarcodes = true,
// Limit the search to 1D formats for faster processing
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
};
// Read from a multi-page PDF warehouse inventory report
var results = BarcodeReader.Read("warehouse-inventory.pdf", options);
Imports IronBarCode
Dim options As New BarcodeReaderOptions With {
.Speed = ReadingSpeed.Balanced,
.ExpectMultipleBarcodes = True,
.ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
}
' Read from a multi-page PDF warehouse inventory report
Dim results = BarcodeReader.Read("warehouse-inventory.pdf", options)
Durch die Einstellung von ExpectBarcodeTypes auf die tatsächlich erwarteten Formate wird der Durchsatz verbessert, da der Reader Muster überspringt, die nicht übereinstimmen. Die Eigenschaft Speed reicht von Faster (am besten geeignet für saubere, qualitativ hochwertige Bilder) bis ExtremeDetail (am besten geeignet für beschädigte oder niedrig auflösende Quellen). Die Dokumentation zum Barcode-Lesen umfasst zusätzliche Optionen wie Multithreading und das Scannen von Bereichen von Interesse.
Wie kann man das Erscheinungsbild von Barcodes anpassen?
Mit IronBarcode können Sie jeden visuellen Aspekt eines generierten Barcodes vor dem Speichern kontrollieren. Farben, Schriftarten, Ränder und Anmerkungstexte können programmatisch festgelegt werden. Dies ist nützlich bei der Generierung von Barcodes für Markenetiketten oder regulierte Branchen, in denen das Etikettenlayout strengen Vorgaben folgt.
Die API folgt einem Fluent-Style-Muster: Barcode erstellen, Stilmethoden aufrufen und dann speichern. Alle Stileigenschaften wirken sich unmittelbar auf die Ausgabe aus und erfordern keinen separaten Render-Schritt. Eine vollständige Liste der verfügbaren Eigenschaften finden Sie in den Stil- und Annotationsbeispielen .
Wie geht man mit Barcodes in PDF-Dokumenten um?
IronBarcode liest in PDF-Dateien eingebettete Barcodes auf die gleiche Weise wie Bilddateien. Übergeben Sie einen PDF-Pfad an BarcodeReader.Read() und die Bibliothek extrahiert automatisch Barcodes von jeder Seite. Dies ist wertvoll für Arbeitsabläufe in der Kreditorenbuchhaltung, bei denen Rechnungs-PDFs GS1-128-Barcodes enthalten, und für Logistiksysteme, bei denen Versandmanifeste als PDF-Anhänge verteilt werden.
Sie können Barcodes auch direkt in PDF-Seiten schreiben, indem Sie IronBarcode zusammen mit IronPDF zur Dokumentenerstellung verwenden. Ein gängiges Vorgehen ist die Erstellung eines Versandetiketts im PDF-Format, das sowohl einen für Menschen lesbaren Adressblock als auch einen scannbaren Code-128-Barcode für die Sendungsverfolgungsnummer enthält.
Weiterführende Informationen zu PDF-Barcode-Workflows finden Sie im Tutorial-Bereich von IronBarcode . Dort werden durchgängige Beispiele für die Rechnungsverarbeitung, den Stapeldruck von Etiketten und die Dokumentenarchivierung angeboten.
Wie integriert man Barcodes in ASP.NET Core APIs?
Die Rückgabe eines Barcode-Bildes von einem ASP.NET Core -Controller-Endpunkt ist eine häufige Anforderung für Webportale, die dynamische Beschriftungen anzeigen. Die Base64-Ausgabe von IronBarcode macht dies unkompliziert:
using IronBarCode;
// In an ASP.NET Core controller action
public IActionResult GetBarcodeImage(string productId)
{
var barcode = BarcodeWriter.CreateBarcode(productId, BarcodeEncoding.Code128);
barcode.ResizeTo(400, 100);
barcode.AddBarcodeValueTextBelowBarcode();
// Return the barcode as a PNG image response
byte[] imageBytes = barcode.ToJpegBinaryData();
return File(imageBytes, "image/jpeg");
}
using IronBarCode;
// In an ASP.NET Core controller action
public IActionResult GetBarcodeImage(string productId)
{
var barcode = BarcodeWriter.CreateBarcode(productId, BarcodeEncoding.Code128);
barcode.ResizeTo(400, 100);
barcode.AddBarcodeValueTextBelowBarcode();
// Return the barcode as a PNG image response
byte[] imageBytes = barcode.ToJpegBinaryData();
return File(imageBytes, "image/jpeg");
}
Imports IronBarCode
' In an ASP.NET Core controller action
Public Function GetBarcodeImage(productId As String) As IActionResult
Dim barcode = BarcodeWriter.CreateBarcode(productId, BarcodeEncoding.Code128)
barcode.ResizeTo(400, 100)
barcode.AddBarcodeValueTextBelowBarcode()
' Return the barcode as a PNG image response
Dim imageBytes As Byte() = barcode.ToJpegBinaryData()
Return File(imageBytes, "image/jpeg")
End Function
Dieser Ansatz funktioniert mit jedem Frontend-Framework. Der Browser empfängt eine Standardbildantwort und zeigt sie in einem <img> Tag an. Bei stark frequentierten Endpunkten sollten Barcodes nur einmal generiert und das Byte-Array zwischengespeichert werden, da dieselbe Produkt-ID immer dasselbe Barcode-Bild erzeugt.
Die IronBarcode API-Referenz dokumentiert alle verfügbaren Methoden, einschließlich der Streaming-Ausgabe, wodurch die Zuweisung großer Byte-Arrays für sehr hochauflösende Barcodes vermieden wird.
Wie handhabt IronBarcode die Barcode-Validierung und Fehlerkorrektur?
Barcode-Standards definieren strenge Kodierungsregeln und Prüfsummenanforderungen. Code 128 verwendet eine gewichtete Modulo-103-Prüfsumme. EAN-13 verwendet Modulo-10. QR-Codes enthalten eine Reed-Solomon-Fehlerkorrektur, die eine teilweise Datenwiederherstellung ermöglicht, selbst wenn bis zu 30 % des Barcodes verdeckt oder beschädigt sind.
IronBarcode setzt diese Regeln automatisch durch. Wenn Sie BarcodeWriter.CreateBarcode() aufrufen, prüft die Bibliothek, ob die Daten den Zeichensatz- und Längenbeschränkungen der Symbologie entsprechen, und berechnet und fügt dann die korrekte Prüfsumme hinzu, ohne dass in Ihrem Code zusätzliche Schritte erforderlich sind. Dadurch wird verhindert, dass ungültige Barcodes generiert werden, die von Scannern abgelehnt werden.
Auf der Leseseite wendet die Bibliothek während der Dekodierung eine Fehlerkorrektur an, was bedeutet, dass sie oft den korrekten Wert aus einem Barcode wiederherstellen kann, der teilweise eingerissen, verschmiert oder in niedriger Auflösung gedruckt ist. Dieses Verhalten ist besonders wichtig für die Einhaltung der GS1-Barcode-Standards im Einzelhandel und in der Logistik.
Für einen detaillierteren Einblick in die Funktionsweise der Barcode-Fehlerkorrektur auf Spezifikationsebene bietet die Dokumentation der ISO/IEC-Barcode-Standards die maßgebliche technische Referenz.
Welche gängigen Szenarien gibt es für die Barcode-Integration?
| Szenario | Symbolik | Wichtige IronBarcode -Funktion |
|---|---|---|
| Einzelhandels-Verkaufsstelle | EAN-13, UPC-A | `BarcodeEncoding.EAN13` , PDF-Export |
| Lagerbestand | Code 128, ITF-14 | `ExpectMultipleBarcodes = true` |
| Kennzeichnung im Gesundheitswesen | Data Matrix, GS1-128 | Kleinformatiger Druck, Export in hoher DPI-Auflösung |
| Dokumentenverfolgung | PDF417, Code 39 | PDF-Lesen, Unterstützung für mehrseitige Dateien |
| Mobile Produktsuche | QR-Code | `QRCodeWriter.CreateQrCode()` |
| Versandetiketten | Code 128, GS1-128 | PDF-Ausgabe in Etikettengröße, Textanmerkungen |
Jedes Szenario profitiert von unterschiedlichen Konfigurationsmöglichkeiten. Die IronBarcode Beispielgalerie bietet ausführbaren Code für alle oben genannten Szenarien.
Was sind Ihre nächsten Schritte?
Durch die Integration einer Barcode .NET Komponente wird aus einer ansonsten wochenlangen individuellen Entwicklungsarbeit ein Nachmittag Konfigurationsaufwand. IronBarcode kümmert sich um Kodierungsregeln, Prüfsummen, Bildvorverarbeitung und Fehlerkorrektur, sodass sich Ihr Team auf die Geschäftslogik der Barcode-Workflows konzentrieren kann, anstatt auf die Barcode-Mechanik selbst.
Um voranzukommen:
- Installieren Sie das Paket :
dotnet add package BarCodeoderInstall-Package BarCodein der Paket-Manager-Konsole - Probieren Sie den Schnellstart aus : Das Barcode-Schnellstartbeispiel führt Sie in weniger als 20 Codezeilen durch die Generierung und das Einlesen.
- Symbologien erkunden : Die Referenzliste der unterstützten Barcode-Typen enthält alle Kodierungsformate mit Anwendungshinweisen.
- Preisgestaltung prüfen : Die Lizenzoptionen von IronBarcode decken Einzelentwickler, Teams und OEM-Weitervertriebsszenarien ab.
- Kostenlose Testversion starten : Laden Sie eine 30-tägige kostenlose Testlizenz herunter, um den vollen Funktionsumfang in Ihrer eigenen Anwendung zu testen.
Bei Fragen zur Enterprise , zu Implementierungen in großem Umfang oder zu technischen Integrationsherausforderungen steht Ihnen das IronBarcode Supportteam gerne zur Verfügung.
Externe Referenzen für Barcode-Standards und -Spezifikationen:
GS1-Barcode-Standards – die weltweit führende Autorität für Barcode-Spezifikationen im Einzelhandel und in der Logistik
- ISO/IEC-Normenausschuss für Barcodes – internationale Standards für 1D- und 2D-Barcodesymbolik
- C#-Barcode-Fragen und -Antworten auf Stack Overflow – Community-Diskussionen zur Barcode-Implementierung in .NET
Häufig gestellte Fragen
Was ist eine Barcode-.NET-Komponente?
Eine Barcode- .NET Komponente ist eine Softwarebibliothek, die es Entwicklern ermöglicht, die Barcode-Generierung und das Scannen in .NET Anwendungen zu integrieren und dabei Codierungsregeln, Prüfsummen und die Bildvorverarbeitung automatisch zu handhaben.
Wie kann IronBarcode in .NET-Anwendungen helfen?
IronBarcode stellt eine .NET Komponente zum Generieren und Lesen von Barcodes über eine einfache API bereit, wodurch es unkompliziert ist, C#-Anwendungen Barcode-Funktionen hinzuzufügen, ohne Codierungsalgorithmen manuell implementieren zu müssen.
Welche Arten von Barcodes können mit IronBarcode generiert werden?
IronBarcode unterstützt Code 128, Code 39, Code 93, ITF-14, EAN-13, EAN-8, UPC-A, UPC-E, QR-Code, Data Matrix, PDF417, Aztec und GS1-Varianten.
Warum sollte ich eine Barcode-Komponente verwenden, anstatt eine eigene Lösung zu erstellen?
Eine professionelle Barcode-Komponente übernimmt automatisch die Prüfsummenberechnung, Fehlerkorrektur, Bildvorverarbeitung und die Unterstützung mehrerer Formate, wodurch die Entwicklungszeit verkürzt und das Risiko der Generierung ungültiger Barcodes verringert wird.
Ist IronBarcode für Aufgaben der Datenautomatisierung geeignet?
Ja, IronBarcode eignet sich hervorragend für die Datenautomatisierung. Es liest Barcodes aus Bildern und PDFs und lässt sich direkt in Hintergrunddienste, geplante Jobs und ASP.NET Core APIs integrieren.
Kann IronBarcode für die Dokumentenverfolgung verwendet werden?
Ja. IronBarcode liest Barcodes aus mehrseitigen PDF-Dateien und TIFF-Dateien mit mehreren Einzelbildern und eignet sich daher ideal für Dokumentenverfolgungs-Workflows in den Bereichen Logistik, Kreditorenbuchhaltung und Aktenverwaltung.
Welche .NET Versionen werden von IronBarcode unterstützt?
IronBarcode unterstützt .NET Framework 4.6.2 und höher, .NET Core 3.1 und höher sowie .NET 5 bis .NET 10 und läuft unter Windows, Linux und macOS.
Wie verbessert IronBarcode Bestandsverwaltungssysteme?
IronBarcode bietet zuverlässige Barcode-Generierung und Multi-Barcode-Scanning aus Bildern und PDFs und ermöglicht so eine schnelle und genaue Bestandsverfolgung in Lager- und Einzelhandelsumgebungen.




