Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
In diesem Artikel wird gezeigt, wie man Barcode-Bilder in ASP.NET-Webanwendungen mit C# drucken kann. Für dieses Beispiel wird das MVC-Framework verwendet, aber Sie können auch ASP.NET Web Forms, Windows Forms oder Web API je nach Ihren Bedürfnissen verwenden.
Grundlegende Kenntnisse über das ASP.NET MVC-Framework helfen Ihnen, diesen Artikel besser zu verstehen.
CreateBarcode
methode zum Erstellen von Barcodes in C#Öffnen Sie Microsoft Visual Studio. Klicken Sie auf Neues Projekt erstellen > Wählen Sie ASP.NET Web Application aus den Vorlagen aus > Drücken Sie Weiter > Benennen Sie Ihr Projekt > Drücken Sie Weiter > Wählen Sie MVC aus > Klicken Sie auf die Schaltfläche Erstellen. Das Projekt wird wie unten dargestellt erstellt.
Erstellen Sie ein neues ASP.NET-Projekt
Klicken Sie mit der rechten Maustaste auf den Ordner Modelle > Hinzufügen > Klasse....
Navigieren Sie zum Dialog Klasse hinzufügen
Es erscheint ein neues Fenster. Nennen Sie Ihre Klasse BarcodeModel
.
Schreiben Sie den folgenden Code in die Modellklasse.
public class BarcodeModel
{
[Display(Name ="Barcode File Name")]
public string FileName { get; set; }
[Display(Name = "Barcode Content")]
public string BarcodeContent { get; set; }
}
public class BarcodeModel
{
[Display(Name ="Barcode File Name")]
public string FileName { get; set; }
[Display(Name = "Barcode Content")]
public string BarcodeContent { get; set; }
}
Public Class BarcodeModel
<Display(Name :="Barcode File Name")>
Public Property FileName() As String
<Display(Name := "Barcode Content")>
Public Property BarcodeContent() As String
End Class
Der "Dateiname" wird verwendet, um den Namen des Barcode-Bildes vom Benutzer zu erhalten. Der BarcodeContent
wird verwendet, um den Inhalt des Barcodes aufzunehmen.
Als nächstes wird dem Projekt ein "Controller" hinzugefügt. Sie kommuniziert mit einem "View" und einem "Model" unter Verwendung des MVC-Modells. Der Code zur Erzeugung von Strichcodes besteht aus nur zwei oder drei Zeilen. Daher ist eine separate Klasse nicht erforderlich; stattdessen wird der Code innerhalb des Controllers hinzugefügt.
Um den Controller hinzuzufügen, klicken Sie mit der rechten Maustaste auf den Ordner "Controller" > Hinzufügen > Controller. Es erscheint ein neues Fenster. Wählen Sie MVC 5 Controller Empty. Klicken Sie auf die Schaltfläche Hinzufügen. Es erscheint ein neues Feld.
Dialog "Controller hinzufügen "
Schreiben Sie den Namen Ihres Controllers, zum Beispiel BarcodeController
. Klicken Sie auf die Schaltfläche Hinzufügen. Es wird ein neuer Controller erstellt.
Der nächste Schritt ist die Installation der Barcode-Bibliothek.
Die IronBarcode-Bibliothek wird als Bibliothek eines Drittanbieters für die Erzeugung von Strichcodes empfohlen. Es ist kostenlos für die Entwicklung und bietet zahlreiche Funktionen zum Anpassen von Barcodes, wie zum Beispiel das Hinzufügen vonein Logo zu einem Barcode-Bild, indem Sie einen Wert unterhalb oder oberhalb des Strichcodes hinzufügen,hinzufügen von Anmerkungen unterhalb oder oberhalb des Barcodes, Größenänderung des Barcodes, Speichern des Barcodes inmehrere Bildformateusw. Für weitere Details, klicken Sie bitte hier.
Rufen Sie die Package Manager-Konsole auf. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste.
Install-Package BarCode
Mit diesem Befehl wird die IronBarcode-Bibliothek im Projekt installiert.
Fügen Sie anschließend den folgenden Beispielcode zum Controller hinzu.
[HttpPost]
public ActionResult CreateBarcode(BarcodeModel model)
{
try
{
var MyBarCode = IronBarCode.BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128);
string path = Server.MapPath("~/Files/");
string filepath = Path.Combine(path, model.FileName);
MyBarCode.AddBarcodeValueTextAboveBarcode();
MyBarCode.SaveAsJpeg(filepath);
string image = Directory.GetFiles(path).FirstOrDefault();
ViewBag.fileName = image;
return View();
}
catch
{
return View();
}
}
[HttpPost]
public ActionResult CreateBarcode(BarcodeModel model)
{
try
{
var MyBarCode = IronBarCode.BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128);
string path = Server.MapPath("~/Files/");
string filepath = Path.Combine(path, model.FileName);
MyBarCode.AddBarcodeValueTextAboveBarcode();
MyBarCode.SaveAsJpeg(filepath);
string image = Directory.GetFiles(path).FirstOrDefault();
ViewBag.fileName = image;
return View();
}
catch
{
return View();
}
}
<HttpPost>
Public Function CreateBarcode(ByVal model As BarcodeModel) As ActionResult
Try
Dim MyBarCode = IronBarCode.BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128)
Dim path As String = Server.MapPath("~/Files/")
Dim filepath As String = System.IO.Path.Combine(path, model.FileName)
MyBarCode.AddBarcodeValueTextAboveBarcode()
MyBarCode.SaveAsJpeg(filepath)
Dim image As String = Directory.GetFiles(path).FirstOrDefault()
ViewBag.fileName = image
Return View()
Catch
Return View()
End Try
End Function
try-catch
wird verwendet, um jede Laufzeitausnahme abzufangen.
Die Funktion CreateBarcode
, die von derbarcodeSchreiber klasse zwei Argumente: den Barcode-Inhalt und das Kodierungsschema. Darüber hinaus werden 11 weitere optionale Argumente akzeptiert, darunter maximale Höhe, maximale Breite usw.
Die Funktion Server.MapPath
wird verwendet, um den Pfad zu bestimmen, in dem die erzeugten Barcode-Bilder gespeichert werden sollen. Die Methode Path.Combine
kombiniert den Pfad und den Namen des Barcode-Bildes.
DiebarcodeWertTextOberhalbBarcode" hinzufügen wird der Barcodewert hinzugefügt. IronBarcode bietet weitere Barcode-Einstellungen wie max-height
, max-width
, barcode
, color
, und so weiter. Sie können die verschiedenen Parameter erkunden und nutzen.
DiesaveAsJpeg funktion nimmt den Pfad als Argument und speichert die erzeugten Barcodes in diesem bestimmten Pfad.
Die Methode Directory.GetFile
holt das neu erzeugte Barcode-Bild.
viewBag.FileName" wird verwendet, um den Pfad des Barcode-Bildes an die Ansicht zu senden, in der das erzeugte Barcode-Bild angezeigt wird.
QR-Codes können auch auf die gleiche Weise erzeugt werden, indem man das Kodierungsschema von "Code128" inQRCode
.
Der nächste Schritt besteht darin, die Client-Seite für diese ASP.NET-Webanwendung bereitzustellen, indem eine neue Ansicht hinzugefügt wird. Klicken Sie mit der rechten Maustaste auf den Namen der Controller-Methode und klicken Sie auf die Schaltfläche "Ansicht hinzufügen".
Navigieren Sie zu Ansicht hinzufügen Dialog
Es erscheint ein neues Fenster. Wählen Sie die MVC 5-Ansicht aus, und klicken Sie auf die Schaltfläche Hinzufügen.
Es erscheint eine neue Eingabeaufforderung wie unten dargestellt.
Dialog Ansicht hinzufügen
Benennen Sie Ihre Ansicht und klicken Sie auf die Schaltfläche Hinzufügen. Es wird eine neue .cshtml
-Datei erstellt.
Fügen Sie den folgenden Code in Ihre neu erstellte Ansicht ein.
@model GenerateBarcodeMVC.Models.BarcodeModel
@{
ViewBag.DisplayBarcode = false;
}
<h2>Create</h2>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>GenerateBarcode</h4>
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.LabelFor(model => model.FileName, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.FileName, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.FileName, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.BarcodeContent, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.BarcodeContent, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.BarcodeContent, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<img src="~/Files/@Path.GetFileName(ViewBag.FileName)" alt="Barcode" />
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
@model GenerateBarcodeMVC.Models.BarcodeModel
@{
ViewBag.DisplayBarcode = false;
}
<h2>Create</h2>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>GenerateBarcode</h4>
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.LabelFor(model => model.FileName, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.FileName, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.FileName, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.BarcodeContent, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.BarcodeContent, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.BarcodeContent, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<img src="~/Files/@Path.GetFileName(ViewBag.FileName)" alt="Barcode" />
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
model ReadOnly Property () As GenerateBarcodeMVC.Models.BarcodeModel
ViewBag.DisplayBarcode = False
End Property
'INSTANT VB TODO TASK: The following line could not be converted:
(Of h2) Create</h2> [using](Html.BeginForm())
If True Then
'INSTANT VB WARNING: Instant VB cannot determine whether both operands of this division are integer types - if they are then you should use the VB integer division operator:
Html.AntiForgeryToken() <div class="form-horizontal"> (Of h4) GenerateBarcode</h4> <hr /> Html.ValidationSummary(True, "", New With {Key .class = "text-danger"}) <div class="form-group"> Html.LabelFor(Function(model) model.FileName, htmlAttributes:= New With {Key .class = "control-label col-md-2"}) <div class="col-md-10"> Html.EditorFor(Function(model) model.FileName, New With {
Key .htmlAttributes = New With {Key .class = "form-control"}
}) Html.ValidationMessageFor(Function(model) model.FileName, "", New With {Key .class = "text-danger"}) </div> </div> <div class="form-group"> Html.LabelFor(Function(model) model.BarcodeContent, htmlAttributes:= New With {Key .class = "control-label col-md-2"}) <div class="col-md-10"> Html.EditorFor(Function(model) model.BarcodeContent, New With {
Key .htmlAttributes = New With {Key .class = "form-control"}
}) Html.ValidationMessageFor(Function(model) model.BarcodeContent, "", New With {Key .class = "text-danger"}) </div> </div> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <img src="~/Files/@Path.GetFileName(ViewBag.FileName)" alt="Barcode" /> </div> </div> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input type="submit" value="Create" class="btn btn-default" /> </div> </div> </div>
End If
Dim Scripts As section
If True Then
Scripts.Render("~/bundles/jqueryval")
End If
Klicken Sie dann mit der rechten Maustaste in die Ansicht und klicken Sie auf die Schaltfläche In Browser ausführen.
Webanwendung ausführen, um Formular erstellen anzuzeigen
Geben Sie den Namen des Barcode-Bildes und den Barcode-Inhalt wie unten gezeigt ein:
Eingabe des Barcodeinhalts
Klicken Sie auf die Schaltfläche Erstellen. Das Barcode-Bild wird generiert und auf dem Bildschirm angezeigt, wie unten dargestellt.
Barcode aus einer URL generieren
In diesem Tutorial wurde gezeigt, wie man Barcodes mit ASP.NET in C# in Kombination mit dem MVC-Framework generiert. Als IDE wird Microsoft Visual Studio verwendet. IronPDF ist eine Bibliothek eines Drittanbieters, die für die Entwicklung kostenlos ist und mit allen Versionen des .NET-Frameworks, einschließlich der neu veröffentlichten Version, kompatibel ist. IronBarcode ist schnell und bietet zahlreiche Funktionen für die Arbeit mit Barcodes. Sie kann auchqR-Codes erzeugen durch Angabe verschiedener Typen.
Es gibt noch viele andere nützliche Bibliotheken wie IronPDF für die Arbeit mit PDF-Dokumenten, IronXL für die Arbeit mit Excel-Dokumenten und IronOCR für die Arbeit mit OCR. Derzeit können Sie alle fünf Bibliotheken zum Preis von nur zwei erhalten, wenn Sie die komplette Iron Suite kaufen. Besuchen Sieunsere Lizenzierungsseite für weitere Einzelheiten.
9 .NET API-Produkte für Ihre Bürodokumente