BarCode aus Text, URLs, IDs & Binärdaten in C
IronBarcode ermöglicht es C#-Entwicklern, Barcodes aus verschiedenen Datenquellen wie Strings, Byte-Arrays und Memory-Streams mithilfe der Methode BarcodeWriter.CreateBarcode() zu generieren. Es unterstützt mehrere Barcode-Formate wie QR Code, Code128 und PDF417.
Schnellstart: Erstellen eines Barcodes aus einer Zeichenkette in einer Zeile
Verwenden Sie die API von IronBarcode, um Barcodes mit minimalem Aufwand zu erstellen. Dieses Beispiel zeigt, wie man einen Barcode aus einer einfachen Zeichenkette mit nur einer Zeile Code erstellt. Umfassende Beispiele finden Sie in der BarCode Quickstart Anleitung.
-
Installieren Sie IronBarcode mit NuGet Package Manager
PM > Install-Package BarCode -
Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
var barcode = IronBarCode.BarcodeWriter.CreateBarcode("Order123", IronBarCode.BarcodeWriterEncoding.Code128); -
Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronBarcode in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Minimaler Arbeitsablauf (5 Schritte)
- Herunterladen der C#-Bibliothek zur Erstellung von Barcodes aus Daten
- Erstellen von BarCodes mit **`System.String`**-Eingabe unter Verwendung der Methode `CreateBarcode`
- Erstellen von BarCodes mit **`System.Byte[]`**-Eingabe mit der Methode `CreateBarcode`
- Erstellen von BarCodes mit **`System.IO.Stream`**-Eingabe unter Verwendung der Methode `CreateBarcode`
- Speichern Sie den resultierenden Barcode in mehreren Bildformaten
Wie erstelle ich einen BarCode aus einem String?
Welche BarCode-Formate eignen sich am besten für verschiedene Zeichenkettentypen?
Verschiedene BarCode-Formate sind für bestimmte Datentypen und Anwendungsfälle optimiert. Die Kenntnis der unterstützten Barcode-Formate hilft bei der Auswahl der richtigen Kodierung:
- QR-Codes: Am besten für URLs, E-Mail-Adressen und große Textdaten. Unterstützt bis zu 4.296 alphanumerische Zeichen mit Fehlerkorrektur.
- Code128: Ideal für alphanumerische Daten wie Bestellnummern und Seriencodes. Äußerst effizient für moderne Anwendungen.
- PDF417: Perfekt für komplexe Daten wie Flugtickets und Behördenausweise. Speichert bis zu 1.850 alphanumerische Zeichen.
- Code93: Hervorragend geeignet für Postdienste und Bestandsverfolgung mit kompakten numerischen Daten.
- Aztec: Optimal für mobiles Ticketing und Transport, benötigt weniger Platz als QR-Codes.
Der folgende Code demonstriert, wie man Barcodes mit einem String schreibt:
:path=/static-assets/barcode/content-code-examples/how-to/create-barcode-from-string.cs
using IronBarCode;
string text = "Hello, World!";
string url = "https://ironsoftware.com/csharp/barcode/";
string receiptID = "2023-08-04-12345"; // Receipt ID (numeric id)
string flightID = "FLT2023NYC-LAX123456"; // Flight ID (alphanumeric id)
string number = "1234";
BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png");
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png");
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png");
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png");
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png");
Imports IronBarCode
Private text As String = "Hello, World!"
Private url As String = "https://ironsoftware.com/csharp/barcode/"
Private receiptID As String = "2023-08-04-12345" ' Receipt ID (numeric id)
Private flightID As String = "FLT2023NYC-LAX123456" ' Flight ID (alphanumeric id)
Private number As String = "1234"
BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png")
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png")
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png")
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png")
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png")
Was sind die generierten BarCode-Ergebnisse?
Dieser Code kodiert fünf verschiedene Datenbeispiele in fünf Barcodetypen: einfachen Text in Aztec, URL in QR-Code, numerische ID in Code 93, alphanumerische ID in PDF417 und Zahl in Codabar. Die Bilder werden als PNG gespeichert. Erweiterte Exportoptionen finden Sie in der Anleitung BarCode als Bild erstellen.
Text
URL
Quittung ID
Flug-ID
Nummer
Wie kann ich generierte BarCodes anpassen?
Nachdem Sie Ihren Barcode erstellt haben, können Sie sein Aussehen mit den Styling-Funktionen von IronBarcode verbessern. So erstellen Sie einen individuellen Barcode mit Farben, Anmerkungen und Rändern:
using IronBarCode;
// Create a barcode with custom styling
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128);
// Apply custom styling
myBarcode.ResizeTo(300, 100);
myBarcode.SetMargins(10);
myBarcode.ChangeBarCodeColor(Color.DarkBlue);
// Add text annotations
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.AddAnnotationTextAboveBarcode("Product SKU", Font.Arial, Color.Black, 12);
// Save the customized barcode
myBarcode.SaveAsPng("customized-barcode.png");
using IronBarCode;
// Create a barcode with custom styling
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128);
// Apply custom styling
myBarcode.ResizeTo(300, 100);
myBarcode.SetMargins(10);
myBarcode.ChangeBarCodeColor(Color.DarkBlue);
// Add text annotations
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.AddAnnotationTextAboveBarcode("Product SKU", Font.Arial, Color.Black, 12);
// Save the customized barcode
myBarcode.SaveAsPng("customized-barcode.png");
Imports IronBarCode
' Create a barcode with custom styling
Dim myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128)
' Apply custom styling
myBarcode.ResizeTo(300, 100)
myBarcode.SetMargins(10)
myBarcode.ChangeBarCodeColor(Color.DarkBlue)
' Add text annotations
myBarcode.AddBarcodeValueTextBelowBarcode()
myBarcode.AddAnnotationTextAboveBarcode("Product SKU", Font.Arial, Color.Black, 12)
' Save the customized barcode
myBarcode.SaveAsPng("customized-barcode.png")
Weitere Gestaltungsmöglichkeiten finden Sie in der Anleitung Anpassen und Gestalten von BarCodes.
Wie kann ich einen BarCode aus einem Byte-Array erstellen?
Warum ist die Zeichenkodierung für Byte Array BarCodes wichtig?
Um Barcodes aus Byte-Arrays zu erstellen, muss sichergestellt werden, dass die Zeichenkodierung mit dem erforderlichen BarcodeEncoding übereinstimmt, da jeder Barcode-Typ eine andere Zeichenkodierung akzeptiert. Das Verständnis der Ausgabedatenformate gewährleistet Kompatibilität. Hier sind die in IronBarcode verfügbaren Zeichenkodierungen:
- ASCII: Verwendet 7 Bits pro Zeichen für englische Buchstaben, Ziffern und Interpunktion. Beispiel: "A" = 65.
- UTF-8: Kodierung mit variabler Länge für alle Unicode-Zeichen. Beispiel: € = 0xE2 0x82 0xAC.
- UTF-16: Verwendet 16-Bit-Sequenzen für Unicode. Beispiel: α = 0x03B1.
- UTF-32: Feste 32-Bit-Sequenz pro Zeichen. Beispiel: α = 0x000003B1.
- ISO-8859-1: Erweitert ASCII für westeuropäische Sprachen. Beispiel: é = 233.
[{i:Die Standardzeichencodierung in IronBarcode ist ISO-8859-1.}]
Wie konvertiere ich Byte-Arrays in BarCodes?
Der folgende Code demonstriert die Erzeugung eines Barcodes aus Byte-Daten:
:path=/static-assets/barcode/content-code-examples/how-to/create-barcode-from-byte.cs
using IronBarCode;
using System.Text;
byte[] text = Encoding.UTF8.GetBytes("Hello, World!");
byte[] url = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/barcode/");
byte[] receiptID = Encoding.UTF8.GetBytes("2023-08-04-12345"); // Receipt ID (numeric id)
byte[] flightID = Encoding.UTF8.GetBytes("FLT2023NYC-LAX123456"); // Flight id (alphanumeric id)
byte[] number = Encoding.UTF8.GetBytes("1234");
BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png");
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png");
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png");
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png");
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png");
Imports IronBarCode
Imports System.Text
Private text() As Byte = Encoding.UTF8.GetBytes("Hello, World!")
Private url() As Byte = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/barcode/")
Private receiptID() As Byte = Encoding.UTF8.GetBytes("2023-08-04-12345") ' Receipt ID (numeric id)
Private flightID() As Byte = Encoding.UTF8.GetBytes("FLT2023NYC-LAX123456") ' Flight id (alphanumeric id)
Private number() As Byte = Encoding.UTF8.GetBytes("1234")
BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png")
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png")
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png")
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png")
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png")
Dieser Codeabschnitt wandelt fünf Zeichenketten-Eingaben in System.Byte[] Objekte um. Um diese Byte-Arrays in Barcodes umzuwandeln, übergeben Sie sie an BarcodeWriter zusammen mit dem gewünschten BarcodeEncoding. Optional können Sie MaxWidth und MaxHeight für die Barcodegröße festlegen.
Arbeiten mit binären Daten und Sonderzeichen
Wenn Sie mit binären Daten oder Sonderzeichen arbeiten, verwenden Sie Unicode BarCodes schreiben für internationale Zeichenunterstützung. Hier ist ein Beispiel für den Umgang mit binären Daten:
using IronBarCode;
using System.Text;
using System.IO;
// Example: Encoding binary data (like a small file) into QR Code
byte[] binaryData = File.ReadAllBytes("document.pdf");
string base64Data = Convert.ToBase64String(binaryData);
// Create QR code with high error correction for binary data
GeneratedBarcode binaryBarcode = BarcodeWriter.CreateBarcode(
base64Data,
BarcodeEncoding.QRCode
);
// Set high error correction for data integrity
binaryBarcode.SetQRCodeErrorCorrection(QRCodeErrorCorrection.High);
// Save with appropriate size for data density
binaryBarcode.ResizeTo(500, 500);
binaryBarcode.SaveAsPng("binary-data-qr.png");
using IronBarCode;
using System.Text;
using System.IO;
// Example: Encoding binary data (like a small file) into QR Code
byte[] binaryData = File.ReadAllBytes("document.pdf");
string base64Data = Convert.ToBase64String(binaryData);
// Create QR code with high error correction for binary data
GeneratedBarcode binaryBarcode = BarcodeWriter.CreateBarcode(
base64Data,
BarcodeEncoding.QRCode
);
// Set high error correction for data integrity
binaryBarcode.SetQRCodeErrorCorrection(QRCodeErrorCorrection.High);
// Save with appropriate size for data density
binaryBarcode.ResizeTo(500, 500);
binaryBarcode.SaveAsPng("binary-data-qr.png");
Imports IronBarCode
Imports System.Text
Imports System.IO
' Example: Encoding binary data (like a small file) into QR Code
Dim binaryData As Byte() = File.ReadAllBytes("document.pdf")
Dim base64Data As String = Convert.ToBase64String(binaryData)
' Create QR code with high error correction for binary data
Dim binaryBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(base64Data, BarcodeEncoding.QRCode)
' Set high error correction for data integrity
binaryBarcode.SetQRCodeErrorCorrection(QRCodeErrorCorrection.High)
' Save with appropriate size for data density
binaryBarcode.ResizeTo(500, 500)
binaryBarcode.SaveAsPng("binary-data-qr.png")
Wie erstelle ich einen BarCode aus einem Speicherstrom?
Wann sollte ich Memory Streams für die Erzeugung von Barcodes verwenden?
Memory Streams eignen sich am besten für die Verarbeitung von Daten, die nicht auf der Festplatte gespeichert werden müssen, wie z. B. dynamisch generierte Inhalte in Webanwendungen oder die Verarbeitung von Datenbanken. Die Anleitung BarCode als Stream exportieren bietet zusätzlichen Kontext für Stream-basierte Workflows.
Der folgende Code demonstriert die Erzeugung eines Barcodes aus einem Speicherstrom:
:path=/static-assets/barcode/content-code-examples/how-to/create-barcode-from-stream.cs
using IronBarCode;
using System.IO;
using System.Text;
MemoryStream text = new MemoryStream(Encoding.UTF8.GetBytes("Hello, World!"));
MemoryStream url = new MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/barcode/"));
MemoryStream receiptID = new MemoryStream(Encoding.UTF8.GetBytes("2023-08-04-12345")); // Receipt ID (numeric id)
MemoryStream flightID = new MemoryStream(Encoding.UTF8.GetBytes("FLT2023NYC-LAX123456")); // Flight id (alphanumeric id)
MemoryStream number = new MemoryStream(Encoding.UTF8.GetBytes("1234"));
BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png");
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png");
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png");
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png");
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png");
Imports IronBarCode
Imports System.IO
Imports System.Text
Private text As New MemoryStream(Encoding.UTF8.GetBytes("Hello, World!"))
Private url As New MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/barcode/"))
Private receiptID As New MemoryStream(Encoding.UTF8.GetBytes("2023-08-04-12345")) ' Receipt ID (numeric id)
Private flightID As New MemoryStream(Encoding.UTF8.GetBytes("FLT2023NYC-LAX123456")) ' Flight id (alphanumeric id)
Private number As New MemoryStream(Encoding.UTF8.GetBytes("1234"))
BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png")
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png")
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png")
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png")
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png")
Was sind die Vorteile der Verwendung von Memory Streams?
Dieser Codeabschnitt erzeugt ein MemoryStream aus einem System.Byte[] Objekt und verwendet es dann als Eingabe in BarcodeWriter.CreateBarcode(), um einen Barcode aus Speicherstromdaten zu generieren. Memory-Streams bieten mehrere Vorteile:
- Leistung: Keine Festplatten-E/A-Operationen, schneller für temporäre Daten
- Sicherheit: Daten verbleiben im Speicher, so dass weniger sensible Informationen preisgegeben werden
- Flexibilität: Einfache Integration mit Stream-basierten APIs und Bibliotheken
- Ressourceneffizienz: Automatische Speicherverwaltung und -entsorgung
Erweitertes Beispiel für Stream Processing
Kombinieren Sie IronBarcode für komplexe Szenarien mit Stream-Verarbeitung mit anderen Streaming-Verfahren:
using IronBarCode;
using System.IO;
using System.Text;
// Example: Processing multiple barcodes in a batch using streams
public static List<Stream> GenerateBarcodeStreams(List<string> dataItems)
{
var barcodeStreams = new List<Stream>();
foreach (var item in dataItems)
{
// Convert string to stream
var dataStream = new MemoryStream(Encoding.UTF8.GetBytes(item));
// Generate barcode from stream
var barcode = BarcodeWriter.CreateBarcode(dataStream, BarcodeEncoding.Code128);
// Export barcode back to stream
var outputStream = new MemoryStream();
barcode.SaveAsPng(outputStream);
outputStream.Position = 0; // Reset position for reading
barcodeStreams.Add(outputStream);
}
return barcodeStreams;
}
// Usage example
var orderNummers = new List<string> { "ORD-001", "ORD-002", "ORD-003" };
var barcodes = GenerateBarcodeStreams(orderNummers);
using IronBarCode;
using System.IO;
using System.Text;
// Example: Processing multiple barcodes in a batch using streams
public static List<Stream> GenerateBarcodeStreams(List<string> dataItems)
{
var barcodeStreams = new List<Stream>();
foreach (var item in dataItems)
{
// Convert string to stream
var dataStream = new MemoryStream(Encoding.UTF8.GetBytes(item));
// Generate barcode from stream
var barcode = BarcodeWriter.CreateBarcode(dataStream, BarcodeEncoding.Code128);
// Export barcode back to stream
var outputStream = new MemoryStream();
barcode.SaveAsPng(outputStream);
outputStream.Position = 0; // Reset position for reading
barcodeStreams.Add(outputStream);
}
return barcodeStreams;
}
// Usage example
var orderNummers = new List<string> { "ORD-001", "ORD-002", "ORD-003" };
var barcodes = GenerateBarcodeStreams(orderNummers);
Imports IronBarCode
Imports System.IO
Imports System.Text
' Example: Processing multiple barcodes in a batch using streams
Public Shared Function GenerateBarcodeStreams(dataItems As List(Of String)) As List(Of Stream)
Dim barcodeStreams As New List(Of Stream)()
For Each item In dataItems
' Convert string to stream
Dim dataStream As New MemoryStream(Encoding.UTF8.GetBytes(item))
' Generate barcode from stream
Dim barcode = BarcodeWriter.CreateBarcode(dataStream, BarcodeEncoding.Code128)
' Export barcode back to stream
Dim outputStream As New MemoryStream()
barcode.SaveAsPng(outputStream)
outputStream.Position = 0 ' Reset position for reading
barcodeStreams.Add(outputStream)
Next
Return barcodeStreams
End Function
' Usage example
Dim orderNummers As New List(Of String) From {"ORD-001", "ORD-002", "ORD-003"}
Dim barcodes = GenerateBarcodeStreams(orderNummers)
Informationen zu asynchronen Operationen und verbesserter Leistung in Multithreading-Anwendungen finden Sie im Leitfaden Verwendung von Async und Multithreading.
Häufig gestellte Fragen
Wie erstelle ich einen BarCode aus Text in C#?
Sie können einen Barcode aus Text in C# mit IronBarcode mit nur einer Zeile Code erstellen: BarcodeWriter.CreateBarcode("YourText", BarcodeWriterEncoding.Code128). IronBarcode unterstützt mehrere Formate wie QR Code, Code128, PDF417, Aztec und mehr.
Welche Arten von Daten kann ich in BarCodes kodieren?
Mit IronBarcode können Sie verschiedene Datentypen kodieren, darunter Strings, URLs, IDs, binäre Daten (Byte-Arrays) und Speicherströme. Die Bibliothek übernimmt automatisch die Konvertierung und Kodierung auf der Grundlage des von Ihnen gewählten Barcodeformats.
Welches BarCode-Format sollte ich für URLs verwenden?
QR-Codes sind die beste Wahl für die Codierung von URLs in IronBarcode. QR-Codes können bis zu 4.296 alphanumerische Zeichen speichern und verfügen über Fehlerkorrekturfunktionen, wodurch sie sich ideal für Web- und E-Mail-Adressen eignen.
Welches Barcode-Format eignet sich am besten für Bestellnummern und Seriencodes?
Code128 ist das ideale Format für alphanumerische Daten wie Bestellnummern und Seriencodes, wenn IronBarcode verwendet wird. Es ist hocheffizient für moderne Anwendungen und bietet eine ausgezeichnete Datendichte für gemischte Zeichensätze.
Kann ich BarCodes aus binären Daten erstellen?
Ja, IronBarcode unterstützt die Erstellung von Barcodes aus Binärdaten unter Verwendung von System.Byte[]-Arrays oder System.IO.Stream-Eingaben über die CreateBarcode-Methode, so dass Sie jede Art von Binärinformationen kodieren können.
In welchen Bildformaten kann ich BarCodes speichern?
Mit IronBarcode können Sie generierte Barcodes in mehreren Bildformaten speichern, darunter PNG, JPEG, BMP, GIF und TIFF. Die Bibliothek bietet flexible Exportoptionen für verschiedene Anwendungsfälle.
Wie viele Daten kann ich in einem PDF417-Barcode speichern?
PDF417-Barcodes, die mit IronBarcode erstellt werden, können bis zu 1.850 alphanumerische Zeichen speichern und eignen sich daher perfekt für komplexe Daten wie Flugtickets, Versandetiketten und Behördenausweise.
Welches BarCode-Format eignet sich am besten für das mobile Ticketing?
Aztec-Barcodes sind bei Verwendung von IronBarcode optimal für mobile Ticketing- und Transportanwendungen geeignet. Sie benötigen weniger Platz als QR-Codes und bieten gleichzeitig eine hohe Datenkapazität und Lesbarkeit auf mobilen Geräten.

