using IronBarCode;
using System.Drawing;
// Reading a barcode is easy with IronBarcode!
var resultFromFile = BarcodeReader.Read(@"file/barcode.png"); // From a file
var resultFromBitMap = BarcodeReader.Read(new Bitmap("barcode.bmp")); // From a bitmap
var resultFromImage = BarcodeReader.Read(Image.FromFile("barcode.jpg")); // From an image
var resultFromPdf = BarcodeReader.ReadPdf(@"file/mydocument.pdf"); // From PDF use ReadPdf
// To configure and fine-tune barcode reading, utilize the BarcodeReaderOptions class
var myOptionsExample = new BarcodeReaderOptions
{
// Choose a reading speed from: Faster, Balanced, Detailed, ExtremeDetail
// There is a tradeoff in performance as more detail is set
Speed = ReadingSpeed.Balanced,
// Reader will stop scanning once a single barcode is found (if set to true)
ExpectMultipleBarcodes = true,
// By default, all barcode formats are scanned for
// Specifying a subset of barcode types to search for would improve performance
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
// Utilize multiple threads to read barcodes from multiple images in parallel
Multithreaded = true,
// Maximum threads for parallelized barcode reading
// Default is 4
MaxParallelThreads = 2,
// The area of each image frame in which to scan for barcodes
// Specifying a crop area will significantly improve performance and avoid noisy parts of the image
CropArea = new Rectangle(),
// Special setting for Code39 barcodes
// If a Code39 barcode is detected, try to read with both the base and extended ASCII character sets
UseCode39ExtendedMode = true
};
// Read with the options applied
var results = BarcodeReader.Read("barcode.png", myOptionsExample);
// Create a barcode with one line of code
var myBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeWriterEncoding.EAN8);
// After creating a barcode, we may choose to resize
myBarcode.ResizeTo(400, 100);
// Save our newly-created barcode as an image
myBarcode.SaveAsImage("EAN8.jpeg");
Image myBarcodeImage = myBarcode.Image; // Can be used as Image
Bitmap myBarcodeBitmap = myBarcode.ToBitmap(); // Can be used as Bitmap
Générer et afficher dynamiquement des codes-barres en ASP.NET MVC
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 sontSpé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.
.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.
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 siteSite web de Visual Studio.
Bibliothèque IronBarcode: Téléchargez et installez la bibliothèque IronBarcode à partir de la pageSite 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 êtresous licence à des fins commerciales et de déploiement. Vous pouvez essayer leessai gratuit 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.
Dans la nouvelle fenêtre, recherchez et sélectionnez "ASP.NET MVC(Application Web) Model View Controller" et cliquez sur le bouton Next.
Cliquez sur le nom du nouveau projet et son emplacement et cliquez sur suivant.
Sélectionnez la version .NET que vous souhaitez utiliser, laissez toutes les autres options telles quelles et cliquez sur Créer.
Un projet .NET est créé.
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é.
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.
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.
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é.
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
$vbLabelText $csharpLabel
Créez un dossier nommé "GeneratedBarcode" sous le dossier wwwroot pour stocker l'image du code-barres généré.
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
$vbLabelText $csharpLabel
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 queDessin d'Iron pour l'installation de la police de code-barres. Une documentation plus détaillée sur l'API est disponibleici.
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.
Sélectionnez Razor View et cliquez sur ajouter.
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.
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
$vbLabelText $csharpLabel
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
$vbLabelText $csharpLabel
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
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. LesIronBarcode 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 suivantlien. 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 suitlien.
Regan est diplômé de l'université de Reading, où il a obtenu une licence en ingénierie électronique. Avant de rejoindre Iron Software, il s'était concentré sur une seule tâche. Ce qu'il apprécie le plus chez Iron Software, c'est la diversité des tâches qu'il peut accomplir, qu'il s'agisse d'apporter une valeur ajoutée aux ventes, à l'assistance technique, au développement de produits ou à la commercialisation. Il aime comprendre comment les développeurs utilisent la bibliothèque d'Iron Software et utiliser ces connaissances pour améliorer continuellement la documentation et développer les produits.
< 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#)
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucune obligation de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre gratuit Démonstration en direct
Fiable par plus de 2 millions d'ingénieurs dans le monde entier