IRONBARCODEの使用

ASP.NET MVCでバーコードを動的に生成して表示する方法

公開済み 2023年5月16日
共有:

ASP.NET MVCは、開発者が堅牢で動的なWebアプリケーションを構築することを可能にする人気のWeb開発フレームワークです。 ウェブアプリケーションにおいて一般的な要件のひとつに、バーコード画像を生成し表示する機能があります。 バーコード画像はデータを機械読み取り可能な形式で表し、バーコードスキャナーによって読み取ることができます。

ASP.NET MVCでバーコード画像を動的に生成および表示することは、市場をリードするC#ライブラリ、IronBarcodeを使用して実現できます。 このライブラリは、開発者がCode 39、Code 128、およびQRコードなど、さまざまなフォーマットでバコード画像をクロスプラットフォームで簡単に生成できるAPIを提供します。 System.Drawing.Commonや.NET Graphics APIに依存せずにWindows特有 .NET 6から、IronBarcodeはクロスプラットフォーム機能を可能にし、より多くのソース互換性を提供します。

IronBarcode

IronBarcodeは、.NETアプリケーションでバーコード画像の作成、読み取り、操作を行うためのさまざまな機能を提供する人気のある.NETバーコードライブラリです。 このライブラリは、.NET コンポーネントとライブラリを専門とするソフトウェア開発会社であるIron Softwareによって開発およびメンテナンスされています。 IronBarcodeは、Code 128、Code 39、QRコード、Data Matrix、PDF417を含む広範なバーコード形式をサポートしています。このライブラリは、カスタムの寸法、色、フォントを使用してバーコードを生成する機能や、バーコード画像にテキストやロゴを追加する機能も提供しています。

バコード生成に加えて、IronBarcodeにはバーコード画像の読み取りおよびデコード機能も含まれています。 このライブラリは、画像、PDFドキュメント、およびライブカメラフィードからバーコードを読み取り、デコードすることができます。 それは1次元および2次元のバーコード形式の両方をサポートしており、部分的に隠されたり損傷したバーコードも認識することができます。

前提条件

.NETアプリケーションでIronBarcodeを使用する前に、いくつかの前提条件を満たす必要があります。

  1. .NET Framework または .NET Core: IronBarcode は .NET Framework と .NET Core の両方に対応しています。 開発環境に適切な.NETバージョンがインストールされていることを確認してください。

  2. Visual Studio: IronBarcodeは、簡単な開発とテストのためにVisual Studioに統合することができます。 Visual Studio の Community、Professional、または Enterprise エディションを使用できます。 ここからダウンロードできますVisual Studioウェブサイト.

  3. IronBarcodeライブラリ: IronBarcodeライブラリをダウンロードしてインストールIron Software ウェブサイトまたはNuGetパッケージマネージャー経由。 ライブラリは、NuGet パッケージ マネージャー コンソールを使用して次のコマンドを実行することでインストールできます: Install-Package BarCode.

    IronBarcodeは開発のために無料ですが、ライセンス済み商業目的およびデプロイメント目的のために。 試してみることができます無料試用そのすべての機能をテストするために。

ASP.NET MVCプロジェクトの新規作成

Visual Studioを開き、「新しいプロジェクトの作成」をクリックしてください。

ASP.NET MVCでバーコードを動的に生成および表示する方法: 図1

新しいウィンドウで「ASP.NET MVC」を見つけて選択します。(ウェブアプリ)「Model View Controller」と入力し、「次へ」ボタンをクリックします。

ASP.NET MVCでバーコードを動的に生成し表示する方法: 図2

新しいプロジェクトの名前とその場所を入力し、「次へ」をクリックしてください。

ASP.NET MVCでバーコードを動的に生成して表示する方法: 図3

使用したい.NETバージョンを選択し、その他のオプションはそのままにして、「作成」をクリックしてください。

ASP.NET MVCで動的にバーコードを生成および表示する方法:図4

.NETプロジェクトが作成されました。

ASP.NET MVCでバーコードを動的に生成および表示する方法: 図5

IronBarcode のインストール

1. NuGetパッケージマネージャーの使用

このオプションはVisual Studio内で利用可能であり、IronBarcodeパッケージを直接ソリューションにインストールします。 ツールに移動し、表示されるようにNuGetパッケージマネージャーをクリックしてください。

ASP.NET MVCでバーコードを動的に生成して表示する方法:図6

NuGetパッケージマネージャーの検索ボックスを使用してIronBarcodeライブラリを検索します。 利用可能なパッケージのリストからIronBarcodeオプションを選択します。

ASP.NET MVCでバーコードを動的に生成および表示する方法: 図7

2.Visual Studio コマンド ラインの使用

Visual Studio のメニューで、[ツール] > [NuGet パッケージ マネージャー] > [パッケージ マネージャー コンソール] に進みます。

ASP.NET MVCで動的にバーコードを生成および表示する方法:図8

パッケージ マネージャー コンソール タブに次の行を入力してください: Install-Package BarCode.

このパッケージは現在のプロジェクトにダウンロード/インストールされ、使用の準備が整います。

ASP.NET MVCでバーコードを動的に生成して表示する方法:図9

IronBarcodeを使用してバーコード画像を生成および表示する

環境の設定が完了したので、ASP.NET MVCでバーコード画像を動的に生成するコードの書き方を始めましょう。

まず、モデルフォルダの下に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#

wwwrootフォルダーの下に生成されたバーコード画像を保存するため、「GeneratedBarcode」という名前のフォルダーを作成します。

ASP.NET MVCでバーコードを動的に生成および表示する方法:図10

「controllers」フォルダーにある「HomeController.cs」クラスに次のアクション メソッドを追加します。


    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#

上記のコード内のアクションメソッドは、後で作成するViewから生成される送信リクエストを処理します。 IronBarcodeを使用すると、バーコードフォーマット、画像要素、バーコードフォント、およびHTML画像要素をカスタマイズできます。 追加のカスタマイズが必要な場合、追加のライブラリが必要になる可能性があります。IronDrawingバーコードフォントをインストールするための。 より詳細なAPIドキュメントは、以下のリンクからご覧いただけますこれ.

これで、バーコード生成メソッドのビューを作成できます。

「HomeController.cs」ファイルでcreateBarcodeメソッドを右クリックし、「Viewの追加」をクリックします。

ASP.NET MVC で動的にバーコードを生成して表示する方法: 図 11

Razorビューを選択し、追加をクリックします。

ASP.NET MVCでバーコードを動的に生成および表示する方法: 図12

以下の画像に示されているパラメータを選択し、追加をクリックすると、そのメソッドに対するビューが自動的に追加されます。

ASP.NET MVCでバーコードを動的に生成および表示する方法: 図13

生成されたコードを変更して、インターフェースをお好みに合わせて変更できます。


    @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#

すべての設定が完了したら、_Layout.cshtmlファイルを開いて、navbarCreateBarcodeオプションを追加するコードを追加してください。

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

アプリケーションを実行し、テキストフィールドにテキストを書き込み、「Generate barcode」ボタンをクリックすると、バーコード画像が動的に作成され表示されます。

5.1. 出力

ASP.NET MVCにおけるバーコードの動的生成と表示方法:図14

結論

ASP.NET MVCアプリケーションでバーコード画像を動的に生成および表示することは、IronBarcodeライブラリを使用することで実現できます。IronBarcodeは強力な.NETバーコードライブラリで、.NETアプリケーション内でバーコード画像の生成、読み取り、および操作のための幅広い機能を提供します。 .NET Framework、Visual Studio、IronBarcodeライブラリなどの前提条件を満たすことで、開発者はASP.NET MVCプロジェクトを簡単に作成し、Code 39、Code 128、QRコードなどのさまざまなフォーマットでバーコード画像を生成および表示することができます。 についてIronBarcodeライブラリは、カスタムの寸法、色、フォントでバーコードを生成し、バーコード画像にテキストやロゴを追加する機能を開発者に提供します。 バコード生成に加えて、IronBarcodeにはバーコード画像の読み取りおよびデコード機能も含まれています。 IronBarcodeを使用すると、開発者はビジネスニーズに対応する強力で動的なウェブアプリケーションを簡単に作成することができます。 このトピックに関する関連チュートリアルについては、以下をご覧くださいリンク. バーコードおよびQRコードの生成に関するステップバイステップのチュートリアルについては、以下をご参照ください。リンク.

< 以前
C# Windowsアプリケーションでバーコードを印刷する方法
次へ >
リンクのQRコードを作成する方法 (C#チュートリアル)