Passer au contenu du pied de page
UTILISATION DE IRONBARCODE

Comment générer un code-barres Code 128 en C#

Les codes-barres sont essentiels dans les opérations commerciales modernes, allant de la gestion des stocks à l'étiquetage des produits et à l'expédition. Code 128 se distingue comme une option polyvalente et largement utilisée parmi les divers ensembles de codes à barres. Dans cet article, nous explorerons comment construire un générateur de code-barres Code 128 en C# à l'aide de la bibliothèque IronBarcode.

Comment générer un code-barres Code 128 en C#

  1. Installez la bibliothèque IronBarcode
  2. Générez un code-barres en utilisant l'encodage Code 128
  3. Redimensionnez le code-barres
  4. Stylisez le code-barres en changeant la couleur de fond et la couleur du code-barres
  5. Lisez le code-barres créé

Introduction aux codes-barres Code 128

L'ensemble de codes Code 128 est un code-barres linéaire à haute densité et à longueur variable qui peut encoder à la fois des données alphanumériques et des caractères spéciaux. Il est auto-vérifiant, ce qui inclut un chiffre de contrôle pour assurer l'exactitude des données. Le schéma d'encodage Code 128 prend en charge trois caractères de contrôle :

  1. Jeu de caractères A : Inclut les lettres majuscules, les chiffres et les caractères spéciaux.
  2. Jeu de caractères B : Inclut les lettres majuscules, les lettres minuscules, les chiffres et des caractères spéciaux supplémentaires.
  3. Jeu de caractères C : Encode des paires de chiffres (00 à 99).

Pourquoi choisir IronBarcode ?

IronBarcode est une bibliothèque .NET robuste facilitant la génération, le décodage et la personnalisation de codes-barres. With support for various Barcode Encoding like Code 128, Code 39, Code 93, Code EAN 13, EAN 8, QR codes, and others. Elle offre une API intuitive pour le contenu, la taille et les ajustements d'apparence. Ses capacités de décodage, le calcul automatique de la somme de contrôle, et l'exportation d'images en font un outil précieux pour les développeurs dans la gestion des stocks et au-delà. Les options de personnalisation de la bibliothèque pour les propriétés, les marges, les polices et les couleurs augmentent sa polyvalence dans les tâches liées aux codes-barres.

Créer un générateur de codes-barres Code 128 en C#

Maintenant, nous allons écrire du code pour générer une image de code-barres Code 128 en C#. La première étape consiste à installer la bibliothèque IronBarcode dans notre projet. Le projet peut être de tout type, tel que Windows Forms, formulaires Web, MAUI, Xamarin, ASP.NET MVC, Razor ou projets Blazor.

Installation de la bibliothèque IronBarcode

Pour installer le package NuGet d'IronBarcode en utilisant la console du gestionnaire de packages dans Visual Studio, vous pouvez suivre ces étapes :

  1. Ouvrez Visual Studio.
  2. Dans le menu supérieur, allez dans "Affichage" > "Autres fenêtres" > "Console du gestionnaire de packages" pour ouvrir la console du gestionnaire de packages.
  3. Dans la console du gestionnaire de packages, vous pouvez utiliser la commande Install-Package pour installer le package IronBarcode. Tapez la commande suivante et appuyez sur Entrée :

    Install-Package BarCode
    Install-Package BarCode
    SHELL
  4. Cette commande téléchargera et installera la version la plus récente du package NuGet d'IronBarcode et ses dépendances dans votre projet.

Ajoutez l'espace de noms suivant pour utiliser la bibliothèque de codes-barres dans votre projet.

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

Générer une image de code-barres Code 128

Le code suivant va générer un code-barres Code 128.

// Create a barcode from the input string and specify encoding type as Code 128
var myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128);

// Save the barcode image as a JPEG file
myBarcode.SaveAsJpeg("myBarcode.Jpeg");
// Create a barcode from the input string and specify encoding type as Code 128
var myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128);

// Save the barcode image as a JPEG file
myBarcode.SaveAsJpeg("myBarcode.Jpeg");
' Create a barcode from the input string and specify encoding type as Code 128
Dim myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128)

' Save the barcode image as a JPEG file
myBarcode.SaveAsJpeg("myBarcode.Jpeg")
$vbLabelText   $csharpLabel

Ce code crée un code-barres à partir de la chaîne d'entrée et le sauvegarde comme un fichier image JPEG nommé "myBarcode.Jpeg". L'encodage spécifique utilisé est Code 128, qui peut représenter des caractères alphanumériques.

Explication

La première ligne de code crée une nouvelle variable nommée myBarcode. Elle utilise la méthode BarcodeWriter.CreateBarcode pour générer un code-barres basé sur la chaîne d'entrée "12345ABC12345".

Le deuxième argument, BarcodeWriterEncoding.Code128, spécifie le type d'encodage pour le code-barres. Dans ce cas, il utilise l'encodage Code 128, qui est communément utilisé pour les données alphanumériques. Le code-barres résultant est stocké dans la variable myBarcode.

La deuxième ligne enregistre le code-barres généré comme un fichier image JPEG. Le nom du fichier pour l'image enregistrée est "myBarcode.Jpeg". Le format de l'image enregistrée est JPEG (Joint Photographic Experts Group).

Sortie

Le code-barres généré est comme suit :

Comment générer un code-barres Code 128 en C#: Figure 1 - Code-barres généré à partir du code précédent

Ce code peut maintenant être lu à l'aide d'un appareil de lecture de code-barres.

Maintenant, redimensionnons notre code-barres.

Redimensionner le code-barres

Le code suivant redimensionnera notre code-barres selon les dimensions données.

static void Main(string[] args)
{
    // Create a barcode from the input string and specify encoding type as Code 128
    var myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128);

    // Resize the barcode image to the specified width and height (in pixels)
    myBarcode.ResizeTo(800, 300);

    // Save the resized barcode image as a JPEG file
    myBarcode.SaveAsJpeg("myBarcode.Jpeg");
}
static void Main(string[] args)
{
    // Create a barcode from the input string and specify encoding type as Code 128
    var myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128);

    // Resize the barcode image to the specified width and height (in pixels)
    myBarcode.ResizeTo(800, 300);

    // Save the resized barcode image as a JPEG file
    myBarcode.SaveAsJpeg("myBarcode.Jpeg");
}
Shared Sub Main(ByVal args() As String)
	' Create a barcode from the input string and specify encoding type as Code 128
	Dim myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128)

	' Resize the barcode image to the specified width and height (in pixels)
	myBarcode.ResizeTo(800, 300)

	' Save the resized barcode image as a JPEG file
	myBarcode.SaveAsJpeg("myBarcode.Jpeg")
End Sub
$vbLabelText   $csharpLabel

Le code pour créer et enregistrer les codes-barres reste le même. Ajoutez simplement la ligne supplémentaire pour redimensionner le code-barres.

La méthode ResizeTo() redimensionne l'image du code-barres stockée dans la variable myBarcode. La méthode ResizeTo est appelée sur l'objet myBarcode. Les deux arguments passés à ResizeTo sont la largeur et la hauteur. Dans ce cas, la largeur est fixée à 800 pixels et la hauteur est fixée à 300 pixels.

De cette façon, nous pouvons définir la largeur minimale et la hauteur du module à barres. L'image du code-barres résultant aura ces dimensions après le redimensionnement, comme illustré ci-dessous.

Image du code-barres

Comment générer un code-barres Code 128 en C#: Figure 2 - Code-barres redimensionné à partir du code précédent

Maintenant, stylisons notre code-barres.

Styliser le code-barres Code 128

Maintenant, stylisons notre code-barres en changeant la couleur de fond et la couleur du code-barres.

static void Main(string[] args)
{
    // Create a barcode from the input string and specify encoding type as Code 128
    var myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128);

    // Resize the barcode image to the specified width and height (in pixels)
    myBarcode.ResizeTo(800, 300);

    // Change the background color of the barcode
    myBarcode.ChangeBackgroundColor(IronSoftware.Drawing.Color.Cornsilk);

    // Change the barcode color
    myBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.Brown);

    // Save the styled barcode image as a JPEG file
    myBarcode.SaveAsJpeg("myBarcode.Jpeg");
}
static void Main(string[] args)
{
    // Create a barcode from the input string and specify encoding type as Code 128
    var myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128);

    // Resize the barcode image to the specified width and height (in pixels)
    myBarcode.ResizeTo(800, 300);

    // Change the background color of the barcode
    myBarcode.ChangeBackgroundColor(IronSoftware.Drawing.Color.Cornsilk);

    // Change the barcode color
    myBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.Brown);

    // Save the styled barcode image as a JPEG file
    myBarcode.SaveAsJpeg("myBarcode.Jpeg");
}
Shared Sub Main(ByVal args() As String)
	' Create a barcode from the input string and specify encoding type as Code 128
	Dim myBarcode = BarcodeWriter.CreateBarcode("12345ABC12345", BarcodeWriterEncoding.Code128)

	' Resize the barcode image to the specified width and height (in pixels)
	myBarcode.ResizeTo(800, 300)

	' Change the background color of the barcode
	myBarcode.ChangeBackgroundColor(IronSoftware.Drawing.Color.Cornsilk)

	' Change the barcode color
	myBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.Brown)

	' Save the styled barcode image as a JPEG file
	myBarcode.SaveAsJpeg("myBarcode.Jpeg")
End Sub
$vbLabelText   $csharpLabel

Le code pour générer et enregistrer les codes-barres est identique. J'ai juste ajouté deux lignes supplémentaires pour changer la couleur de fond et la couleur du code-barres. L'explication est la suivante :

  • ChangeBackgroundColor : La méthode ChangeBackgroundColor est appelée sur l'objet myBarcode. Cette méthode change la couleur de fond de l'image du code-barres. L'argument passé à ChangeBackgroundColor est IronSoftware.Drawing.Color.Cornsilk, qui spécifie la couleur de fond souhaitée. Dans ce cas, la couleur de fond est définie sur Cornsilk, qui est une couleur jaune pâle.

  • ChangeBarCodeColor : La méthode ChangeBarCodeColor est appelée sur l'objet myBarcode. Cette méthode change la couleur des barres du code-barres. L'argument passé à ChangeBarCodeColor est IronSoftware.Drawing.Color.Brown, qui spécifie la couleur du code-barres souhaitée. Dans ce cas, la couleur du code-barres est définie sur Brown.

Sortie

Notre code-barres stylisé est comme suit :

Comment générer un code-barres Code 128 en C#: Figure 3 - Code-barres stylisé généré à partir du code précédent

Lire le code-barres Code 128

Nous avons appris à générer un code-barres Code 128. Écrivons maintenant le code pour lire le code-barres :

static void Main(string[] args)
{
    // Read barcodes from the specified image file
    var resultFromBarcode = BarcodeReader.Read("myBarcode.Jpeg");

    // Loop through each barcode value read from the image
    foreach (var barcodeValue in resultFromBarcode)
    {
        // Print each barcode value to the console
        Console.WriteLine(barcodeValue);
    }
}
static void Main(string[] args)
{
    // Read barcodes from the specified image file
    var resultFromBarcode = BarcodeReader.Read("myBarcode.Jpeg");

    // Loop through each barcode value read from the image
    foreach (var barcodeValue in resultFromBarcode)
    {
        // Print each barcode value to the console
        Console.WriteLine(barcodeValue);
    }
}
Shared Sub Main(ByVal args() As String)
	' Read barcodes from the specified image file
	Dim resultFromBarcode = BarcodeReader.Read("myBarcode.Jpeg")

	' Loop through each barcode value read from the image
	For Each barcodeValue In resultFromBarcode
		' Print each barcode value to the console
		Console.WriteLine(barcodeValue)
	Next barcodeValue
End Sub
$vbLabelText   $csharpLabel

Le code ci-dessus lit le code-barres à partir du fichier image "myBarcode.Jpeg" et imprime leurs valeurs sur la console. La classe BarcodeReader est responsable du décodage des données du code-barres à partir de l'image. L'explication du code est la suivante :

Explication of Code

  • La première ligne crée une variable nommée resultFromBarcode. Elle appelle la méthode BarcodeReader.Read pour lire les codes-barres à partir du fichier image nommé "myBarcode.Jpeg". Le résultat de cette opération est stocké dans la variable resultFromBarcode.

  • La deuxième ligne démarre une boucle qui parcourt chaque valeur de code-barres dans la collection resultFromBarcode. La boucle foreach nous permet de traiter chaque valeur de code-barres une par une.

  • À l'intérieur de la boucle, cette ligne imprime chaque valeur de code-barres à la console. La valeur du code-barres représente le contenu d'un code-barres qui a été lu à partir de l'image.

La valeur du code-barres sera imprimée sur la console comme illustré ci-dessous.

Sortie

Comment générer un code-barres Code 128 en C#: Figure 4 - Sortie de la console à partir du code-barres lu

Conclusion

En conclusion, cet article a démontré comment créer un générateur de code-barres Code 128 en C# en utilisant la bibliothèque IronBarcode. By leveraging the capabilities of IronBarcode, developers can easily generate, customize, and style Code 128 barcodes for various applications, including inventory management, product labeling, and shipping. En suivant ce tutoriel, les développeurs peuvent intégrer une fonctionnalité de code-barres robuste dans leurs projets C#, améliorant ainsi l'efficacité dans le traitement des tâches liées à la génération et au décodage des codes-barres. La polyvalence et l'API intuitive de IronBarcode en font un outil précieux pour les développeurs travaillant sur des applications qui impliquent la mise en œuvre de codes-barres.

Dans le processus de génération des codes-barres Code 128 avec la bibliothèque IronBarcode, les développeurs ont la flexibilité de personnaliser les caractères de sélection de l'ensemble de codes, assurant ainsi un encodage optimal des données avec des valeurs ASCII variées. Le code de rendu s'adapte parfaitement aux formats d'image préférés, offrant aux développeurs le choix de sauvegarder les codes-barres au format JPEG ou d'autres formats. De plus, l'inclusion d'un caractère d'arrêt garantit la terminaison correcte des informations encodées au sein des codes-barres générés.

IronBarcode offre une évaluation gratuite pour débloquer tout le potentiel de la bibliothèque pour leurs besoins de développement. Cette approche permet aux développeurs d'évaluer les capacités d'IronBarcode avant de s'engager dans la licence commerciale.

Questions Fréquemment Posées

Comment puis-je générer un code-barres Code 128 en C#?

Pour générer un code-barres Code 128 en C#, utilisez la méthode BarcodeWriter.CreateBarcode de la bibliothèque IronBarcode avec votre chaîne d'entrée souhaitée et spécifiez Code 128 comme type d'encodage. Vous pouvez ensuite exporter l'image du code-barres généré en utilisant des méthodes comme SaveAsJpeg.

À quoi sert le Code 128?

Le Code 128 est utilisé pour encoder des données alphanumériques et des caractères spéciaux dans un format de code-barres compact. Il est idéal pour la gestion des stocks, l'étiquetage des produits et les applications d'expédition en raison de sa densité de données élevée et de sa polyvalence.

Puis-je personnaliser l'apparence d'un code-barres avec IronBarcode?

Oui, vous pouvez personnaliser l'apparence d'un code-barres avec IronBarcode en modifiant ses couleurs avec ChangeBackgroundColor et ChangeBarCodeColor, et en le redimensionnant avec la méthode ResizeTo.

Comment lire un code-barres en C#?

Pour lire un code-barres en C#, utilisez la méthode BarcodeReader.Read de la bibliothèque IronBarcode. Cette méthode traite le fichier image contenant le code-barres et renvoie les valeurs décodées pour un traitement ultérieur.

Quels sont les avantages d'utiliser la bibliothèque IronBarcode pour la génération de codes-barres?

La bibliothèque IronBarcode propose une API conviviale, supporte divers encodages de codes-barres, fournit un calcul automatique de somme de contrôle et permet l'exportation d'images dans plusieurs formats, ce qui en fait un outil flexible et efficace pour la génération et la personnalisation des codes-barres.

Quels formats d'image IronBarcode peut-il exporter ?

IronBarcode peut exporter des images de codes-barres vers divers formats, y compris JPEG, ce qui permet une flexibilité dans le traitement et l'intégration des images de codes-barres dans différentes applications.

Est-il possible d'essayer IronBarcode avant de l'acheter ?

Oui, vous pouvez essayer la version d'essai gratuite d'IronBarcode pour explorer son plein potentiel et ses capacités avant de vous engager à acheter une licence commerciale, ce qui garantit que vous pouvez intégrer efficacement la fonctionnalité de code-barres dans vos projets C#.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite