UTILISATION D'IRONBARCODE

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC

Publié mai 16, 2023
Partager:

ASP.NET MVC est un framework de développement web populaire qui permet aux développeurs de créer des applications web robustes et dynamiques. La capacité de générer et d'afficher des images de codes-barres est une exigence courante dans les applications web. Les images de codes-barres sont utilisées pour représenter des données dans un format lisible par une machine et peuvent être lues par un lecteur de codes-barres.

La génération et l'affichage dynamiques d'images de codes-barres en ASP.NET MVC peuvent être réalisés à l'aide de la bibliothèque C# leader du marché, IronBarcode. Cette bibliothèque fournit des API qui permettent aux développeurs de générer facilement des images de codes-barres sur toutes les plates-formes dans différents formats tels que le Code 39, le Code 128 et le Code QR. Sans dépendre de System.Drawing.Common et de l'API graphique .NET, qui sont Spécifique à Windows à partir de .NET 6, IronBarcode permet des fonctionnalités multiplateformes et une plus grande compatibilité des sources.

IronBarcode

IronBarcode est une bibliothèque de codes-barres .NET populaire qui offre un large éventail de fonctionnalités pour la création, la lecture et la manipulation d'images de codes-barres dans les applications .NET. La bibliothèque est développée et maintenue par Iron Software, une société de développement de logiciels spécialisée dans les composants et les bibliothèques .NET. IronBarcode prend en charge un large éventail de formats de codes-barres, notamment le Code 128, le Code 39, le QR Code, le Data Matrix et le PDF417. La bibliothèque propose également des fonctionnalités permettant de générer des codes-barres avec des dimensions, des couleurs et des polices personnalisées, et d'ajouter du texte et des logos aux images de codes-barres.

Outre la génération de codes-barres, IronBarcode comprend également des fonctions de lecture et de décodage d'images de codes-barres. La bibliothèque peut lire et décoder des codes-barres à partir d'images, de documents PDF et de flux de caméras en direct. Il prend en charge les formats de codes-barres 1D et 2D et peut même reconnaître les codes-barres partiellement masqués ou endommagés.

Conditions préalables

Avant de travailler avec IronBarcode for .NET dans une application, quelques conditions préalables doivent être remplies.

  1. .NET Framework ou .NET Core: IronBarcode est conçu pour fonctionner à la fois avec .NET Framework et .NET Core. Assurez-vous que la version .NET appropriée est installée dans votre environnement de développement.

  2. Visual Studio: IronBarcode peut être intégré à Visual Studio pour faciliter le développement et les tests. Les éditions Visual Studio Community, Professional ou Enterprise peuvent être utilisées. Il peut être téléchargé à partir du site Site web de Visual Studio.

  3. Bibliothèque IronBarcode: Téléchargez et installez la bibliothèque IronBarcode à partir de la page Site web d'Iron Software ou via le gestionnaire de paquets NuGet. La bibliothèque peut être installée à l'aide de la console NuGet Package Manager en exécutant la commande suivante : Installer-Package BarCode.

     IronBarcode est gratuit pour le développement mais doit être [sous licence](licensing)  à des fins commerciales et de déploiement. Vous pouvez essayer le [essai gratuit](trial-license)  pour tester toutes ses fonctionnalités.

Création d'un nouveau projet ASP.NET MVC

Ouvrez Visual Studio et cliquez sur Créer un nouveau projet.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 1

Dans la nouvelle fenêtre, recherchez et sélectionnez "ASP.NET MVC (Application Web) Model View Controller" et cliquez sur le bouton Next.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 2

Cliquez sur le nom du nouveau projet et son emplacement et cliquez sur suivant.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 3

Sélectionnez la version .NET que vous souhaitez utiliser, laissez toutes les autres options telles quelles et cliquez sur Créer.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 4

Un projet .NET est créé.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 5

Installer IronBarcode

1. Utilisation du gestionnaire de paquets NuGet

Cette option est disponible dans Visual Studio et installera le paquetage IronBarcode directement dans votre solution. Allez dans Outils et cliquez sur NuGet Package Manager comme indiqué.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 6

Recherchez la bibliothèque IronBarcode en utilisant le champ de recherche du gestionnaire de paquets NuGet. Sélectionnez l'option IronBarcode dans la liste des paquets disponibles.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 7

2. Utilisation de la ligne de commande de Visual Studio

Dans le menu Visual Studio, allez dans Outils > NuGet Package Manager > Console du gestionnaire de paquets.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 8

Saisissez la ligne suivante dans l'onglet de la console du gestionnaire de paquets : Install-Package BarCode.

Le paquet sera téléchargé/installé dans le projet en cours et sera prêt à être utilisé.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 9

Génération et affichage d'images de codes-barres à l'aide d'IronBarcode

Maintenant que notre environnement est configuré, nous pouvons commencer à écrire le code pour générer dynamiquement une image de code-barres dans ASP.NET MVC.

Tout d'abord, créez une classe dans le dossier du modèle nommée GenerateBarcodeModel.cs


    using System.ComponentModel.DataAnnotations;

    namespace GenerateBarcodeMVCCore6_Demo.Models
    {
        public class GenerateBarcodeModel
        {
            [Display(Name = "Enter Barcode Text")]
            public string Barcode
            {
                get;
                set;
            }
        }
    }

    using System.ComponentModel.DataAnnotations;

    namespace GenerateBarcodeMVCCore6_Demo.Models
    {
        public class GenerateBarcodeModel
        {
            [Display(Name = "Enter Barcode Text")]
            public string Barcode
            {
                get;
                set;
            }
        }
    }
Imports System.ComponentModel.DataAnnotations

	Namespace GenerateBarcodeMVCCore6_Demo.Models
		Public Class GenerateBarcodeModel
			<Display(Name := "Enter Barcode Text")>
			Public Property Barcode() As String
		End Class
	End Namespace
VB   C#

Créez un dossier nommé "GeneratedBarcode" sous le dossier wwwroot pour stocker l'image du code-barres généré.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 10

Ajoutez la méthode d'action suivante dans votre classe "HomeController.cs" dans le dossier "controllers".


    public IActionResult CreateBarcode()
            {
                return View();
            }

            //  handling POST operation Inside this Action method
            [HttpPost]
            public IActionResult CreateBarcode(GenerateBarcodeModel generateBarcode)
            {
                try
                {
                    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(generateBarcode.Barcode, BarcodeWriterEncoding.Code128);

            // Adding annotation text to barcode
                    barcode.AddBarcodeValueTextBelowBarcode();

                    // Styling the Barcode
            barcode.ResizeTo(400, 120);
                    barcode.ChangeBarCodeColor(Color.Red);
                    barcode.SetMargins(10);

                    string path = Path.Combine(_environment.WebRootPath, "GeneratedBarcode");
                    if (!Directory.Exists(path))
                    {
                        Directory.CreateDirectory(path);
                    }
                    string filePath = Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png");

            // The generated barcode object can be manipulated, annotated, and exported as an image file, a bitmap image, a PDF file, or a data stream.
            // Here, we save the generated barcode as an image to the GeneratedBarcode folder we had created
                    barcode.SaveAsPng(filePath);
                    string fileName = Path.GetFileName(filePath);
                    string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedBarcode/" + fileName;
                    ViewBag.QrCodeUri = imageUrl;
                }
                catch (Exception)
                {
                    throw;
                }
                return View();
            }

    public IActionResult CreateBarcode()
            {
                return View();
            }

            //  handling POST operation Inside this Action method
            [HttpPost]
            public IActionResult CreateBarcode(GenerateBarcodeModel generateBarcode)
            {
                try
                {
                    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(generateBarcode.Barcode, BarcodeWriterEncoding.Code128);

            // Adding annotation text to barcode
                    barcode.AddBarcodeValueTextBelowBarcode();

                    // Styling the Barcode
            barcode.ResizeTo(400, 120);
                    barcode.ChangeBarCodeColor(Color.Red);
                    barcode.SetMargins(10);

                    string path = Path.Combine(_environment.WebRootPath, "GeneratedBarcode");
                    if (!Directory.Exists(path))
                    {
                        Directory.CreateDirectory(path);
                    }
                    string filePath = Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png");

            // The generated barcode object can be manipulated, annotated, and exported as an image file, a bitmap image, a PDF file, or a data stream.
            // Here, we save the generated barcode as an image to the GeneratedBarcode folder we had created
                    barcode.SaveAsPng(filePath);
                    string fileName = Path.GetFileName(filePath);
                    string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedBarcode/" + fileName;
                    ViewBag.QrCodeUri = imageUrl;
                }
                catch (Exception)
                {
                    throw;
                }
                return View();
            }
Public Function CreateBarcode() As IActionResult
				Return View()
End Function

			'  handling POST operation Inside this Action method
			<HttpPost>
			Public Function CreateBarcode(ByVal generateBarcode As GenerateBarcodeModel) As IActionResult
				Try
					Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(generateBarcode.Barcode, BarcodeWriterEncoding.Code128)

			' Adding annotation text to barcode
					barcode.AddBarcodeValueTextBelowBarcode()

					' Styling the Barcode
			barcode.ResizeTo(400, 120)
					barcode.ChangeBarCodeColor(Color.Red)
					barcode.SetMargins(10)

					Dim path As String = System.IO.Path.Combine(_environment.WebRootPath, "GeneratedBarcode")
					If Not Directory.Exists(path) Then
						Directory.CreateDirectory(path)
					End If
					Dim filePath As String = System.IO.Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png")

			' The generated barcode object can be manipulated, annotated, and exported as an image file, a bitmap image, a PDF file, or a data stream.
			' Here, we save the generated barcode as an image to the GeneratedBarcode folder we had created
					barcode.SaveAsPng(filePath)
					Dim fileName As String = System.IO.Path.GetFileName(filePath)
					Dim imageUrl As String = $"{Me.Request.Scheme}://{Me.Request.Host}{Me.Request.PathBase}" & "/GeneratedBarcode/" & fileName
					ViewBag.QrCodeUri = imageUrl
				Catch e1 As Exception
					Throw
				End Try
				Return View()
			End Function
VB   C#

La méthode action du code ci-dessus traitera la demande de soumission générée par la vue que nous créerons plus tard. Avec IronBarcode, vous pouvez personnaliser le format du code-barres, l'élément d'image, la police du code-barres et l'élément d'image HTML. Des bibliothèques supplémentaires peuvent être nécessaires pour une personnalisation plus poussée, telles que Dessin d'Iron pour l'installation de la police de code-barres. Une documentation plus détaillée sur l'API est disponible ici.

Nous pouvons maintenant créer une vue pour notre méthode de génération de code-barres.

Dans le fichier "HomeController.cs", faites un clic droit sur la méthode createBarcode et cliquez sur Add View.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 11

Sélectionnez Razor View et cliquez sur ajouter.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 12

Sélectionnez les paramètres comme indiqué dans l'image ci-dessous et cliquez sur ajouter, cela ajoutera automatiquement une vue pour cette méthode.

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 13

Vous pouvez modifier le code généré pour changer l'interface comme vous le souhaitez.


    @model GenerateBarcodeMVCCore6_Demo.Models.GenerateBarcodeModel

    @{
        ViewData ["Title"] = "CreateBarcode";
    }

    CreateBarcode

    GenerateBarcodeModel

        Back to List

    @section Scripts {
        @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
    }

    @model GenerateBarcodeMVCCore6_Demo.Models.GenerateBarcodeModel

    @{
        ViewData ["Title"] = "CreateBarcode";
    }

    CreateBarcode

    GenerateBarcodeModel

        Back to List

    @section Scripts {
        @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
    }
model ReadOnly Property () As GenerateBarcodeMVCCore6_Demo.Models.GenerateBarcodeModel
		ViewData ("Title") = "CreateBarcode"
End Property

	CreateBarcode GenerateBarcodeModel Back [to] List ReadOnly Property Scripts() As section
		@
		If True Then
			Await Html.RenderPartialAsync("_ValidationScriptsPartial")
		End If
	End Property
VB   C#

Maintenant que tout est prêt, il suffit d'ouvrir le fichier _Layout.cshtml et d'ajouter le code pour ajouter l'option CreateBarcode dans la navbar.

CreateBarcode
CreateBarcode
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'CreateBarcode
VB   C#

Lancez maintenant l'application, écrivez du texte dans le champ de texte et cliquez sur le bouton Générer le code-barres, ce qui créera et affichera l'image du code-barres de manière dynamique.

5.1. Sortie

Comment générer et afficher dynamiquement des codes-barres en ASP.NET MVC : Figure 14

6. Conclusion

La génération et l'affichage dynamiques d'images de codes-barres dans les applications ASP.NET MVC peuvent être réalisés à l'aide de la bibliothèque IronBarcode - une puissante bibliothèque de codes-barres .NET qui offre un large éventail de fonctionnalités pour la création, la lecture et la manipulation d'images de codes-barres dans les applications .NET. En remplissant les conditions préalables telles que l'installation du Framework .NET, de Visual Studio et de la bibliothèque IronBarcode, les développeurs peuvent facilement créer des projets ASP.NET MVC et générer et afficher des images de codes-barres dans différents formats tels que le Code 39, le Code 128 et le Code QR. Les IronBarcode offre aux développeurs des fonctionnalités permettant de générer des codes-barres avec des dimensions, des couleurs et des polices personnalisées, et d'ajouter du texte et des logos aux images de codes-barres. Outre la génération de codes-barres, IronBarcode comprend également des fonctions de lecture et de décodage d'images de codes-barres. Avec IronBarcode, les développeurs peuvent facilement créer des applications web puissantes et dynamiques qui répondent aux besoins de leur entreprise. Pour un tutoriel sur ce sujet, voir le site suivant lien. Pour un tutoriel étape par étape sur la génération de codes-barres et de codes QR, veuillez vous référer à ce qui suit lien.

< PRÉCÉDENT
Comment imprimer un code-barres dans l'application Windows C#
SUIVANT >
Comment créer un code QR pour un lien (Tutoriel C#)