
Jak drukować kod kreskowy w ASP.NET w C#
W tym artykułe pokażemy, jak drukować obrazy kodów kreskowych w aplikacjach internetowych ASP.NET przy użyciu języka C#. W tym przykładzie zostanie wykorzystany framework MVC, ale w zależności od potrzeb można również użyć ASP.NET Web Forms, Windows Forms lub Web API.
Podstawowa znajomość frameworka ASP.NET MVC pozwoli lepiej zrozumieć ten artykuł.
Jak drukować pliki z kodami kreskowymi w języku C#
- Zainstaluj bibliotekę C# do drukowania pliku z kodami kreskowymi BarCode
- Konfiguracja modelu i kontrolera
- Wykorzystaj metodę
CreateBarCodedo utworzenia BarCODE w języku C# - Skonfiguruj widok, aby wyświetlał wygenerowany BARCODE
- Wydrukuj stronę internetową zawierającą obraz BARCODE za pomocą drukarki lub oprogramowania do drukowania do pliku PDF
Utwórz projekt MVC
Otwórz program Microsoft Visual Studio. Kliknij Utwórz nowy projekt > Wybierz Aplikacja internetowa ASP.NET z szablonów > Naciśnij Dalej > Nadaj nazwę projektowi > Naciśnij Dalej > Wybierz MVC > Kliknij przycisk Utwórz. Projekt zostanie utworzony zgodnie z poniższym opisem.
Utwórz nowy projekt ASP.NET
Dodaj model
Kliknij prawym przyciskiem myszy folder Models > Dodaj > Klasa....
Przejdź do okna dialogowego dodawania klasy
Pojawi się nowe okno. Nazwij swoją klasę jako BarcodeModel.
Wpisz poniższy kod w klasie modelu.
using System.ComponentModel.DataAnnotations;
public class BarcodeModel
{
[Display(Name ="Barcode File Name")]
public string FileName { get; set; }
[Display(Name = "Barcode Content")]
public string BarcodeContent { get; set; }
}Imports System.ComponentModel.DataAnnotations
Public Class BarcodeModel
<Display(Name :="Barcode File Name")>
Public Property FileName() As String
<Display(Name := "Barcode Content")>
Public Property BarcodeContent() As String
End ClassFileName będzie używane do uzyskania nazwy obrazu kodu kreskowego od użytkownika. BarcodeContent jest używane do przyjmowania zawartości dla kodu kreskowego.
Dodaj kontroler
Następnie, dodano Controller do projektu. Będzie komunikować się z View i Model używając modelu MVC. Kod służący do generowania BARCODE składa się zaledwie z dwóch lub trzech wierszy. Dlatego nie ma potrzeby tworzenia oddzielnej klasy; zamiast tego kod jest dodawany wewnątrz kontrolera.
Aby dodać kontroler, kliknij prawym przyciskiem myszy folder Controllers > Dodaj > Kontroler. Pojawi się nowe okno. Wybierz MVC 5 Controller Empty. Kliknij przycisk Dodaj. Pojawi się nowe okienko.
Dodaj okno dialogowe kontrolera
Napisz nazwę kontrolera, na przykład, BarcodeController. Kliknij przycisk Dodaj. Zostanie wygenerowany nowy kontroler.
Kolejnym krokiem jest zainstalowanie biblioteki BarCode.
Zainstaluj bibliotekę BarCode
Jako bibliotekę zewnętrzną do generowania kodów kreskowych zaleca się bibliotekę IronBarcode. Jest bezpłatny do celów programistycznych i oferuje wiele funkcji dostosowywania kodów kreskowych, takich jak dodawanie logo do obrazu BarCode, dodawanie wartości poniżej lub powyżej BarCode, dodawanie adnotacji poniżej lub powyżej BarCode, zmiana rozmiaru BarCode, zapisywanie BarCode w wielu formatach obrazu itp. Aby uzyskać więcej informacji, kliknij tutaj.
Przejdź do konsoli menedżera pakietów. Wpisz następujące polecenie i naciśnij Enter.
To polecenie zainstaluje bibliotekę IronBarcode w projekcie.
Wygeneruj BarCode
Następnie dodaj poniższy przykładowy kod do kontrolera.
using System.IO;
using System.Linq;
using System.Web.Mvc;
using IronBarCode;
public class BarcodeController : Controller
{
[HttpPost]
public ActionResult CreateBarcode(BarcodeModel model)
{
try
{
// Create a barcode with the specified content and encoding
var MyBarCode = BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128);
// Define the path where the barcode image will be saved
string path = Server.MapPath("~/Files/");
string filepath = Path.Combine(path, model.FileName);
// Add the barcode value text above the barcode
MyBarCode.AddBarcodeValueTextAboveBarcode();
// Save the generated barcode as a JPEG file
MyBarCode.SaveAsJpeg(filepath);
// Retrieve the first file from the directory as a sample image
string image = Directory.GetFiles(path).FirstOrDefault();
// Pass the image path to the view
ViewBag.FileName = image;
return View();
}
catch
{
// Handle any exceptions that occur
return View();
}
}
}Imports System.IO
Imports System.Linq
Imports System.Web.Mvc
Imports IronBarCode
Public Class BarcodeController
Inherits Controller
<HttpPost>
Public Function CreateBarcode(ByVal model As BarcodeModel) As ActionResult
Try
' Create a barcode with the specified content and encoding
Dim MyBarCode = BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128)
' Define the path where the barcode image will be saved
Dim path As String = Server.MapPath("~/Files/")
Dim filepath As String = System.IO.Path.Combine(path, model.FileName)
' Add the barcode value text above the barcode
MyBarCode.AddBarcodeValueTextAboveBarcode()
' Save the generated barcode as a JPEG file
MyBarCode.SaveAsJpeg(filepath)
' Retrieve the first file from the directory as a sample image
Dim image As String = Directory.GetFiles(path).FirstOrDefault()
' Pass the image path to the view
ViewBag.FileName = image
Return View()
Catch
' Handle any exceptions that occur
Return View()
End Try
End Function
End Classtry-catchjest używane do przechwytywania wyjątków czasu wykonania.- Funkcja
CreateBarcodedostarczona przez klasęBarcodeWriterprzyjmuje dwa argumenty: zawartość kodu kreskowego oraz schemat kodowania. Ponadto akceptuje również 11 innych opcjonalnych argumentów, w tym maksymalną wysokość, maksymalną szerokość i tak dalej. - Funkcja
Server.MapPathjest używana do mapowania ścieżki, gdzie będą zapisywane wygenerowane obrazy kodów kreskowych. MetodaPath.Combinepołączy ścieżkę i nazwę obrazu kodu kreskowego. - Funkcja
AddBarcodeValueTextAboveBarcodedoda wartość kodu kreskowego. IronBarcode dostarcza innych ustawień kodu kreskowego, takich jakmax-height,max-width,barcode,colori tak dalej. Możesz zapoznać się z różnymi parametrami i z nich korzystać. - Funkcja
SaveAsJpegprzyjmuje ścieżkę jako argument i zapisuje wygenerowane kody kreskowe w tej konkretnej ścieżce. - Metoda
Directory.GetFilespobierze nowo wygenerowany obraz kodu kreskowego. ViewBag.FileNamejest używane do wysłania ścieżki obrazu kodu kreskowego do widoku w celu wyświetlenia wygenerowanego obrazu kodu kreskowego.
Kody QR mogą być również generowane w ten sam sposób poprzez zmianę schematu kodowania z Code128 na QRCode.
Dodaj Wyświetl
Kolejnym krokiem jest zapewnienie strony klienckiej dla tej aplikacji internetowej ASP.NET poprzez dodanie nowego widoku. Kliknij prawym przyciskiem myszy nazwę metody kontrolera i kliknij przycisk "Dodaj widok".
Przejdź do dodawania okna dialogowego
Pojawi się nowe okno. Wybierz widok MVC 5 i kliknij przycisk Dodaj.
Pojawi się nowe pole tekstowe, jak pokazano poniżej.
Dodaj okno dialogowe
Nadaj nazwę widokowi i kliknij przycisk Dodaj. Zostanie utworzony nowy plik .cshtml.
Dodaj poniższy kod do nowo wygenerowanego widoku.
@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")
}
Następnie kliknij prawym przyciskiem myszy wewnątrz okna podglądu i kliknij przycisk "Uruchom w przeglądarce".
Wynik
Uruchom aplikację internetową, aby wyświetlić formularz tworzenia
Wprowadź nazwę obrazu BARCODE oraz zawartość BARCODE, jak pokazano poniżej:
Wprowadź treść kodu kreskowego BARCODE
Kliknij przycisk Utwórz. Obraz BarCode zostanie wygenerowany i wyświetlony na ekranie, jak pokazano poniżej.
Wygeneruj BARCODE z adresu URL
Podsumowanie
W tym samouczku pokazano, jak generować kody kreskowe przy użyciu ASP.NET w języku C# w połączeniu z frameworkiem MVC. Jako środowisko IDE używane jest Microsoft Visual Studio. IronPDF to biblioteka innej firmy, która jest bezpłatna do celów programistycznych i kompatybilna ze wszystkimi wersjami .NET Framework, w tym z nowo wydaną wersją. IronBarcode działa szybko i oferuje wiele funkcji do pracy z kodami kreskowymi. Może również generować kody QR poprzez określenie różnych typów.
Istnieje wiele innych przydatnych bibliotek, takich jak IronPDF do pracy z dokumentami PDF, IronXL do pracy z dokumentami Excel oraz IronOCR do pracy z OCR. Obecnie można nabyć wszystkie pięć bibliotek w cenie zaledwie dwóch, kupując kompletny pakiet Iron Suite. Więcej szczegółów można znaleźć na naszej stronie poświęconej licencjom.

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.
Powiązane artykuły


