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
Dynamische Generierung und Anzeige von Barcodes in ASP.NET MVC
IRONBARCODE VERWENDEN
Wie man Barcodes in ASP.NET MVC dynamisch erzeugt und anzeigt
Jordi Bardia
16. Mai 2023
Teilen Sie:
ASP.NET MVC ist ein beliebtes Webentwicklungs-Framework, mit dem Entwickler robuste und dynamische Webanwendungen erstellen können. Eine häufige Anforderung in Webanwendungen ist die Fähigkeit, Strichcodebilder zu erzeugen und anzuzeigen. Barcode-Bilder werden zur Darstellung von Daten in einem maschinenlesbaren Format verwendet und können von einem Barcode-Scanner gelesen werden.
Mit der marktführenden C# Bibliothek IronBarcode for .NET können Sie Barcode-Bilder in ASP.NET MVC dynamisch generieren und anzeigen lassen. Diese Bibliothek bietet APIs, die es Entwicklern ermöglichen, auf einfache Weise plattformübergreifend Barcode-Bilder in verschiedenen Formaten wie Code 39, Code 128 und QR-Code zu erzeugen. Ohne sich auf System.Drawing.Common und die .NET Graphics API zu verlassen, die Windows-spezifisch ab .NET 6 sind, ermöglicht IronBarcode plattformübergreifende Funktionalitäten und sorgt für mehr Quellkompatibilität.
IronBarcode
IronBarcode ist eine beliebte .NET Barcode-Bibliothek, die eine breite Palette von Funktionen zum Erstellen, Lesen und Bearbeiten von Barcode-Bildern in .NET-Anwendungen bietet. Die Bibliothek wird von Iron Software entwickelt und gepflegt, einem Softwareentwicklungsunternehmen, das sich auf .NET-Komponenten und -Bibliotheken spezialisiert hat. IronBarcode bietet Unterstützung für eine Vielzahl von Barcodeformaten, darunter Code 128, Code 39, QR-Code, Data Matrix und PDF417. Die Bibliothek bietet auch Funktionen zum Erzeugen von Barcodes mit benutzerdefinierten Abmessungen, Farben und Schriftarten sowie zum Hinzufügen von Text und Logos zu Barcodebildern.
Neben der Erzeugung von Barcodes bietet IronBarcode auch Funktionen zum Lesen und Dekodieren von Barcodebildern. Die Bibliothek kann Barcodes aus Bildern, PDF-Dokumenten und Live-Kameraübertragungen lesen und dekodieren. Es unterstützt sowohl 1D- als auch 2D-Barcodeformate und kann sogar Barcodes erkennen, die teilweise unleserlich oder beschädigt sind.
Voraussetzungen
Bevor Sie mit IronBarcode in einer .NET-Anwendung arbeiten, müssen einige Voraussetzungen erfüllt sein.
.NET Framework oder .NET Core: IronBarcode ist so konzipiert, dass es sowohl mit .NET Framework als auch mit .NET Core funktioniert. Stellen Sie sicher, dass in Ihrer Entwicklungsumgebung die entsprechende .NET-Version installiert ist.
Visual Studio: IronBarcode kann in Visual Studio für einfache Entwicklung und Tests integriert werden. Es können die Editionen Visual Studio Community, Professional oder Enterprise verwendet werden. Es kann von der Visual Studio-Website heruntergeladen werden.
IronBarcode-Bibliothek: Laden Sie die IronBarcode-Bibliothek von der Iron Software-Website herunter und installieren Sie sie oder über den NuGet-Paketmanager. Die Bibliothek kann über die NuGet Package Manager Console installiert werden, indem der folgende Befehl ausgeführt wird: Install-Package BarCode.
IronBarcode ist für die Entwicklung kostenlos, muss jedoch für kommerzielle Zwecke und den Einsatz lizenziert werden. Sie können die kostenlose Testversion ausprobieren, um alle Funktionen zu testen.
Erstellen eines neuen ASP.NET MVC-Projekts
Öffnen Sie Visual Studio und klicken Sie auf Neues Projekt erstellen.
Im neuen Fenster suchen und wählen Sie "ASP.NET MVC (Web App) Model View Controller" aus und klicken Sie auf die Schaltfläche Weiter.
Klicken Sie auf den Namen des neuen Projekts und seinen Speicherort und klicken Sie auf "Weiter".
Wählen Sie die gewünschte .NET-Version aus, lassen Sie alle anderen Optionen unverändert und klicken Sie auf Erstellen.
Ein .NET-Projekt wird erstellt.
IronBarcode installieren
1. NuGet-Paketmanager verwenden
Diese Option ist in Visual Studio verfügbar und installiert das IronBarcode-Paket direkt in Ihrer Lösung. Gehen Sie zu Tools und klicken Sie auf NuGet Package Manager (siehe Abbildung).
Suchen Sie nach der IronBarcode-Bibliothek über das Suchfeld im NuGet Package Manager. Wählen Sie die Option IronBarcode aus der Liste der verfügbaren Pakete aus.
2. Verwendung der Visual Studio-Befehlszeile
Gehen Sie im Menü von Visual Studio zu Tools > NuGet Package Manager > Package Manager-Konsole.
Geben Sie auf der Registerkarte der Paketmanager-Konsole die folgende Zeile ein: Installieren-Paket BarCode.
Das Paket wird in das aktuelle Projekt heruntergeladen/installiert und ist sofort einsatzbereit.
Erzeugen und Anzeigen von Barcode-Bildern mit IronBarcode
Nun, da unsere Umgebung eingerichtet ist, können wir damit beginnen, Code zu schreiben, um Barcode-Bilder in ASP.NET MVC dynamisch zu erzeugen.
Erstellen Sie zunächst eine Klasse im Modellordner mit dem Namen 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
Erstellen Sie einen Ordner mit dem Namen "GeneratedBarcode" unter dem Ordner wwwroot, um das generierte Barcode-Bild zu speichern.
Fügen Sie die folgende Aktionsmethode in Ihre Klasse "HomeController.cs" im Ordner "controllers" ein.
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
Die Action-Methode im obigen Code behandelt die Submit-Anfrage, die von der später erstellten View generiert wird. Mit IronBarcode können Sie das Barcode-Format, das Bildelement, die Barcode-Schriftart und das HTML-Bildelement individuell anpassen. Zusätzliche Bibliotheken könnten für mehr Anpassung erforderlich sein, wie zum Beispiel Iron Drawing für die Installation der Barcode-Schriftart. Ausführlichere API-Dokumentation finden Sie hier.
Jetzt können wir eine Ansicht für unsere Barcode-Generatormethode erstellen.
Im "HomeController.cs"-Datei, klicken Sie mit der rechten Maustaste auf die createBarcode-Methode und wählen Sie Ansicht hinzufügen.
Wählen Sie Razor View und klicken Sie auf Hinzufügen.
Wählen Sie die Parameter aus, wie in der folgenden Abbildung gezeigt, und klicken Sie auf "Hinzufügen", dann wird automatisch eine Ansicht für diese Methode hinzugefügt.
Sie können den generierten Code ändern, um die Schnittstelle nach Ihren Wünschen zu gestalten.
@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
Jetzt ist alles eingerichtet, öffne einfach die _Layout.cshtml-Datei und füge den Code hinzu, um die CreateBarcode-Option in der navbar hinzuzufügen.
CreateBarcode
CreateBarcode
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'CreateBarcode
$vbLabelText $csharpLabel
Starten Sie nun die Anwendung, schreiben Sie einen Text in das Textfeld und klicken Sie auf die Schaltfläche Barcode generieren, um den Barcode dynamisch zu erstellen und anzuzeigen.
5.1. Ausgabe
6. Schlussfolgerung
Mit der IronBarcode-Bibliothek - einer leistungsstarken .NET-Barcode-Bibliothek, die eine Vielzahl von Funktionen zum Erstellen, Lesen und Bearbeiten von Barcode-Bildern in .NET-Anwendungen bietet - lassen sich Barcode-Bilder dynamisch in ASP.NET MVC-Anwendungen erzeugen und anzeigen. Wenn die Voraussetzungen wie die Installation des .NET-Frameworks, von Visual Studio und der IronBarcode-Bibliothek erfüllt sind, können Entwickler problemlos ASP.NET MVC-Projekte erstellen und Barcode-Bilder in verschiedenen Formaten wie Code 39, Code 128 und QR-Code erzeugen und anzeigen. Die IronBarcode-Bibliothek bietet Entwicklern Funktionen zum Erstellen von Barcodes mit benutzerdefinierten Abmessungen, Farben und Schriftarten sowie zum Hinzufügen von Text und Logos zu Barcode-Bildern. Neben der Erzeugung von Barcodes bietet IronBarcode auch Funktionen zum Lesen und Dekodieren von Barcodebildern. Mit IronBarcode können Entwickler auf einfache Weise leistungsstarke und dynamische Webanwendungen erstellen, die ihren geschäftlichen Anforderungen entsprechen. Für ein verwandtes Tutorial zu diesem Thema besuchen Sie den folgenden Link. Für ein Schritt-für-Schritt-Tutorial zur Erstellung von Barcode und QR-Code beachten Sie bitte den folgenden Link.
Jordi beherrscht vor allem Python, C# und C++. Wenn er seine Fähigkeiten bei Iron Software nicht einsetzt, programmiert er Spiele. Durch seine Mitverantwortung für Produkttests, Produktentwicklung und Forschung trägt Jordi wesentlich zur kontinuierlichen Produktverbesserung bei. Die vielseitigen Erfahrungen, die er sammelt, bieten ihm immer wieder neue Herausforderungen, und er sagt, dass dies einer seiner Lieblingsaspekte bei Iron Software ist. Jordi wuchs in Miami, Florida, auf und studierte Informatik und Statistik an der University of Florida.
< PREVIOUS Wie drucke ich einen Barcode in C# Windows Anwendung
NÄCHSTES > Einen QR-Code für einen Link erstellen (C# Tutorial)