Comment créer un code-barres à partir de données en C#

Créer un code-barres à partir de texte, d'URL, d'identifiants et de données binaires en C

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

Les codes-barres peuvent être générés à partir de chaînes, de données binaires ou de flux de mémoire. Ces formats de données peuvent être utilisés comme entrée dans la méthode BarcodeWriter.CreateBarcode().

avant-propos:2(Démarrage rapide : Créer un code-barres à partir d'une chaîne en une seule ligne)

Utilisez l'API d'IronBarcode pour générer des codes-barres avec une configuration minimale. Cet exemple montre à quel point il est facile de créer un code-barres à partir d'une simple chaîne en utilisant une seule ligne de code.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronBarcode avec le gestionnaire de packages NuGet

    PM > Install-Package BarCode

  2. Copiez et exécutez cet extrait de code.

    var barcode = IronBarCode.BarcodeWriter.CreateBarcode("Order123", IronBarCode.BarcodeWriterEncoding.Code128);
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronBarcode dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer


Créer un code-barres à partir de chaîne

Le code suivant montre comment écrire des codes-barres avec une chaîne :

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

Dans ce fragment de code, nous encodons cinq exemples de données différents en cinq types de codes-barres différents : texte simple en Aztec, URL en code QR, un ID numérique en Code 93, un ID alphanumérique en PDF417 et un nombre en Codabar. Les images sont ensuite sauvegardées en PNG.

Texte
URL
Numéro de reçu
Identifiant du vol
Nombre

Créer un code-barres à partir d'un tableau d'octets

Pour créer des codes-barres à partir de données provenant d'un tableau d'octets, assurez-vous que l'encodage des caractères correspond à l' BarcodeEncoding requis, car chaque type de code-barres accepte un encodage de caractères différent. Voici les différents encodages de caractères qui peuvent être utilisés dans IronBarcode :

  • ASCII (American Standard Code for Information Interchange) :

    • Utilise 7 bits pour représenter chaque caractère, y compris les lettres anglaises, les chiffres, la ponctuation et les caractères de contrôle.
    • Exemple : Le code ASCII pour la lettre 'A' est 65, 'B' est 66, et ainsi de suite.
  • UTF-8 (Unicode Transformation Format 8 bits) :

    • UTF-8 est un encodage de caractères à longueur variable qui peut représenter tous les caractères Unicode.
    • Exemple : Le codage UTF-8 du symbole Euro (€) est la séquence 0xE2 0x82 0xAC.
  • UTF-16 (Unicode Transformation Format 16 bits) :

    • Utilise des séquences de 16 bits pour encoder les caractères, représentant l'ensemble du jeu de caractères Unicode.
    • Exemple : Le codage UTF-16 de la lettre grecque alpha (α) est 0x03B1.
  • UTF-32 (Unicode Transformation Format 32 bits) :

    • Utilise une séquence fixe de 32 bits pour chaque caractère.
    • Exemple : Le codage UTF-32 de la lettre grecque alpha (α) est 0x000003B1.
  • ISO-8859-1 (Latin-1) :
    • Étend l'ASCII pour inclure des caractères des langues d'Europe occidentale, utilisant 8 bits pour chaque caractère.
    • Exemple : Le code ISO-8859-1 pour 'é' est 233.

[{i:L'encodage de caractères par défaut dans IronBarcode est ISO-8859-1.}]

Le code suivant démontre la génération d'un code-barres à partir de données binaires :

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

In the given snippet, 5 string inputs are transformed into a System.Byte[] object. To convert these byte arrays into barcodes, include them as parameters in BarcodeWriter, along with the desired BarcodeEncoding. Optionally, set MaxWidth and MaxHeight for barcode size.

Créer un code-barres à partir d'un flux de mémoire

Le code suivant montre comment générer un code-barres à partir d'un flux de mémoire :

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

Dans ce fragment, un MemoryStream est créé à partir d'un objet System.Byte[]. Ce MemoryStream est ensuite utilisé comme entrée dans BarcodeWriter.CreateBarcode(), générant un code-barres à partir des données du flux de mémoire.

Questions Fréquemment Posées

Comment puis-je générer un code-barres à partir d'une chaîne de texte en C# ?

Pour générer un code-barres à partir d'une chaîne de texte en utilisant IronBarcode, utilisez la méthode BarcodeWriter.CreateBarcode et fournissez la chaîne comme entrée. Par exemple, l'encodage de 'SampleText' en un QR Code peut être effectué en utilisant BarcodeWriter.CreateBarcode('SampleText', BarcodeEncoding.QRCode).

Est-il possible de créer des codes-barres à partir d'ID numériques et alphanumériques ?

Oui, vous pouvez créer des codes-barres à partir d'ID numériques et alphanumériques en utilisant IronBarcode. La méthode BarcodeWriter.CreateBarcode peut coder ces ID dans divers formats de codes-barres tels que Code 93 et Codabar.

Comment puis-je convertir des données binaires en un code-barres ?

Pour convertir des données binaires en un code-barres avec IronBarcode, convertissez d'abord les données binaires en un tableau d'octets. Ensuite, utilisez la méthode BarcodeWriter.CreateBarcode pour générer le code-barres, en spécifiant l'encodage souhaité tel que PDF417.

Quelles sont les étapes pour générer un code-barres à partir d'une URL ?

Générer un code-barres à partir d'une URL en C# en utilisant IronBarcode implique d'utiliser la méthode BarcodeWriter.CreateBarcode avec l'URL comme entrée. Par exemple, pour créer un QR Code à partir de 'https://example.com', utilisez BarcodeWriter.CreateBarcode('https://example.com', BarcodeEncoding.QRCode).

Comment puis-je assurer la compatibilité de l'encodage des caractères lors de la création de codes-barres à partir de tableaux d'octets ?

IronBarcode prend en charge plusieurs encodages de caractères, y compris ASCII, UTF-8, UTF-16, UTF-32 et ISO-8859-1. Lors de la création de codes-barres à partir de tableaux d'octets, choisissez l'encodage correspondant à vos données. L'encodage par défaut est ISO-8859-1.

Quelle méthode dois-je utiliser pour enregistrer un code-barres généré en tant que fichier image ?

Pour enregistrer un code-barres généré en tant que fichier image dans IronBarcode, utilisez des méthodes telles que SaveAsPng pour enregistrer le code-barres en tant que fichier PNG. IronBarcode prend en charge l'enregistrement dans divers formats, assurant une flexibilité dans le traitement de la sortie.

Puis-je générer un code-barres directement à partir d'un flux de mémoire ?

Oui, vous pouvez générer un code-barres à partir d'un flux de mémoire en utilisant IronBarcode. Convertissez vos données en un tableau d'octets, créez un MemoryStream à partir de celui-ci, puis utilisez la méthode BarcodeWriter.CreateBarcode avec le MemoryStream comme entrée.

Hairil Hasyimi Bin Omar
Ingénieur logiciel
Comme tous les grands ingénieurs, Hairil est un apprenant avide. Il affine ses connaissances en C#, Python et Java, utilisant ces connaissances pour apporter de la valeur aux membres de l'équipe dans toute Iron Software. Hairil a rejoint l'équipe d'Iron Software depuis l'Université Teknologi MARA en Malaisie, ...
Lire la suite
Prêt à commencer?
Nuget Téléchargements 1,979,979 | Version: 2025.11 vient de sortir