跳至頁尾內容
使用IRONBARCODE

如何在C# Windows應用程式中列印條碼

1.0 簡介

條碼是一種將資料以人類可見、機器可讀格式呈現的方法。 最初,平行線的間隔、寬度和大小不同以在條碼中表示資料。 這些現代線性或一維(1D)條碼可以由稱為條碼閱讀器的專用光學掃描器讀取,種類繁多。 後來,建立了二維(2D)變體,稱為矩陣碼或2D條碼,即使它們其實並不使用條。 這些變體使用矩形、點、六邊形和其他樣式取代傳統條碼。 專門設計用於讀取2D條碼的2D光學掃描器有多種配置可供選擇。 另一種讀取2D條碼的方法是使用連接到電腦的數位相機,運行軟體拍攝條碼的圖片並使用該圖片進行解碼。 這種2D條碼掃描器能夠由內建相機的行動裝置如智慧手機使用,通過安裝專用應用軟體。

2.0 IronBarcode 特性

使用IronBarcode的條碼程式庫可以輕鬆生成動態條碼。 這個簡單的程式庫可以用幾行程式碼生成條碼。 IronBarcode的條碼閱讀器包括可靠的條碼生成器,使其能夠生產高品質的條碼。 這使得條碼掃描器能夠簡單讀取您的條碼。

  • IronBarcode可以讀取和寫入大多數的條碼格式和QR標準,包括UPC A / E、Databar、EAN 8/13、MSI、Code 39/93/128、CodaB、RSS 14 / Expanded和ITF。
  • 在讀取掃描和實時影片幀時,IronBarcode可以校正旋轉、噪聲、變形和傾斜。 在生成條碼時,IronBarcode自動預處理條碼圖片以提高讀取速度和精確度。 動態條碼受歡迎的原因是能夠進行內容修改。
  • IronBarcode可以利用多核和執行緒,這對批量處理伺服器有幫助。
  • 在單頁和多頁文件中,IronBarcode可以自動找到一個或多個條碼。
  • IronBarcode支持32位和64位架構,並相容.NET Framework和.NET Core實現。
  • IronBarcode支持在PC和移動平台上的控制台、桌面、雲和在線應用程式。
  • IronBarcode可以為多種文件和流型別建立條碼圖像,包括PDF、JPG、TIFF、GIF、BMP、PNG和HTML。

3.0 在Visual Studio中建立一個新專案

要使用IronBarcode框架,必須首先建立一個Visual Studio .NET專案。 可以使用任何版本的Visual Studio,雖然推薦使用最新版本。 根據您的需求,您可以建立一個.NET Windows Forms應用程式,或從多種專案範本中選擇。 在本課程中,我們將使用Windows Forms應用程式以保持簡單。

如何在C# Windows應用程式中列印條碼 圖1 - Windows Forms應用程式

輸入專案的名稱和位置。

如何在C# Windows應用程式中列印條碼 圖2

.NET Framework 4.7將用於此專案。

如何在C# Windows應用程式中列印條碼 圖3 - Form1 應用程式

建立專案後,Form1.cs檔案將在設計器檢視中打開。 您可以插入程式碼,設計使用者介面,並建立/運行程式。 要在解決方案中使用IronBarcode程式庫,您需要下載所需的套件。 可以在套件管理器控制台中使用以下程式碼完成此操作:

Install-Package BarCode

如何在C# Windows應用程式中列印條碼 圖4 - 安裝條碼套件

或者,您可以使用NuGet套件管理器搜尋並下載條碼套件,它將列出所有搜尋結果。 從那裡,您可以選擇所需的套件下載。

如何在C# Windows應用程式中列印條碼 圖5 - NuGet套件管理器

在我們的表單中,我們放置了一個SaveFileDialog框使我們能夠將生成的條碼影像保存到選定的位置。

4.0 使用IronBarcode生成條碼

IronBarcode程式庫可以讓我們僅用幾行程式碼快速生成條碼。 以下是使用Windows Form生成條碼標籤的範例程式碼:

using IronBarCode;  // Import IronBarcode namespace for barcode generation
using System;
using System.Windows.Forms;  // For creating Windows Forms applications

namespace IronBarcode_demo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();  // Initializes the form components
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                saveFileDialog1.Filter = ".png|*.png";  // Set file filter for saving as PNG
                DialogResult result = saveFileDialog1.ShowDialog();  // Show save file dialog
                if (result == DialogResult.OK)
                {
                    string filename = saveFileDialog1.FileName;  // Get the filename chosen by the user
                    // Create a QR code using data from textBox1, and save it as a PNG
                    QRCodeWriter.CreateQrCode(textBox1.Text, 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng(filename);
                    MessageBox.Show("Barcode Generated Successfully");  // Inform user of success
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);  // Display error message in case of exception
            }
        }
    }
}
using IronBarCode;  // Import IronBarcode namespace for barcode generation
using System;
using System.Windows.Forms;  // For creating Windows Forms applications

namespace IronBarcode_demo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();  // Initializes the form components
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                saveFileDialog1.Filter = ".png|*.png";  // Set file filter for saving as PNG
                DialogResult result = saveFileDialog1.ShowDialog();  // Show save file dialog
                if (result == DialogResult.OK)
                {
                    string filename = saveFileDialog1.FileName;  // Get the filename chosen by the user
                    // Create a QR code using data from textBox1, and save it as a PNG
                    QRCodeWriter.CreateQrCode(textBox1.Text, 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng(filename);
                    MessageBox.Show("Barcode Generated Successfully");  // Inform user of success
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);  // Display error message in case of exception
            }
        }
    }
}
Imports IronBarCode ' Import IronBarcode namespace for barcode generation
Imports System
Imports System.Windows.Forms ' For creating Windows Forms applications

Namespace IronBarcode_demo
	Partial Public Class Form1
		Inherits Form

		Public Sub New()
			InitializeComponent() ' Initializes the form components
		End Sub

		Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
			Try
				saveFileDialog1.Filter = ".png|*.png" ' Set file filter for saving as PNG
				Dim result As DialogResult = saveFileDialog1.ShowDialog() ' Show save file dialog
				If result = System.Windows.Forms.DialogResult.OK Then
					Dim filename As String = saveFileDialog1.FileName ' Get the filename chosen by the user
					' Create a QR code using data from textBox1, and save it as a PNG
					QRCodeWriter.CreateQrCode(textBox1.Text, 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng(filename)
					MessageBox.Show("Barcode Generated Successfully") ' Inform user of success
				End If
			Catch ex As Exception
				MessageBox.Show(ex.Message) ' Display error message in case of exception
			End Try
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

在開始編寫程式碼之前,請將文字框新增到.NET WinForms應用程式中。 這將允許我們輸入生成條碼的文字。 然後將按鈕新增到Windows Forms應用程式中,並新增樣本程式碼中的所需程式碼。 我們還使用SaveFileDialog工具,這將有助於將生成的條碼影像保存到所需位置。

如何在C# Windows應用程式中列印條碼 圖6 - 條碼文字

當使用者點擊保存條碼按鈕時,將彈出另存為對話框,允許使用者選擇生成的條碼圖像保存為PNG檔案的檔名和位置。條碼是基於文字框中輸入的文字生成的。

如何在C# Windows應用程式中列印條碼 圖7 - 另存為

CreateQrCode函式的唯一參數是需要在QR碼圖像中編碼的資料(一個字串或我們從文字框獲取的流)。 該方法還接受三個附加的可選參數:

  • 圖形的預設大小為500像素寬和500像素高。
  • 一個錯誤修正等級。 IronBarcode有四個錯誤修正等級:低,中,高和最高。在建立QR碼時,預設使用最高等級的修正(QRCodeWriter.QrErrorCorrectionLevel.greatest)。
  • QR碼的版本號。 如果值為0(預設值),則指示方法根據其將編碼的資料適用於適當的版本號。

上面的例子使用中等程度的錯誤修正建立了500 x 500像素的圖形。 通過在自訂生成的QR碼上使用SaveAs文件對話框中獲得的指定文件位置。

點擊這裡獲取更全面的IronBarcode指南。

5.0 結論

由於其效率和與各種操作系統的相容性,IronBarcode程式庫被認為是生成和識別條碼的首選選項之一。 它提供了一系列功能用於建立和自定義不同型別的條碼,包括調整文字、顏色、線寬和高度的能力。 程式庫的授權詳細資訊可以在網站上獲得,該網站包括開發人員的付費和免費版本。 更新和支援在一年內免費提供。

常見問題

如何在C# Windows Forms應用程式中生成條碼?

要在C# Windows Forms應用程式中生成條碼,您可以透過NuGet套件管理器整合IronBarcode程式庫。建立一個文字框以輸入條碼資料,和一個按鈕來以IronBarcode提供的範例程式碼觸發條碼生成。

設置Visual Studio專案以生成條碼涉及哪些步驟?

首先在Visual Studio中設置一個使用.NET Framework 4.7或更高版本的Windows Forms應用程式。然後,使用NuGet套件管理器安裝IronBarcode套件以啟用條碼生成功能。

如何將生成的條碼保存為圖像文件?

IronBarcode允許您將生成的條碼保存為PNG文件。您可以在Windows Forms應用程式中使用'SaveFileDialog'工具來選擇保存條碼圖像的文件名和位置。

使用2D條碼相較於傳統線性條碼有何好處?

2D條碼,如QR碼,可以儲存比傳統線性條碼更多的資料,並且可以通過數位相機或專用光學掃描器讀取,使其對於各種應用更具彈性。

在生成QR碼時可以自訂錯誤更正等級嗎?

是的,IronBarcode允許您在生成QR碼時設置錯誤更正等級。根據QR碼需要具有的對損壞或資料丟失的穩定程度,可以將其調整為低、中、高或最高。

IronBarcode可以批次處理條碼嗎?

是的,IronBarcode透過利用多核和執行緒支援批次處理,這對於需要高容量條碼處理的伺服器端應用程式尤其有用。

IronBarcode可以在哪些平台上使用?

IronBarcode與.NET Framework和.NET Core相容,支持32位和64位架構。它可以用於控制台應用程式、桌面應用程式、雲服務以及在PC和移動平台上的線上應用程式。

為什麼圖像預處理在條碼生成中很重要?

圖像預處理至關重要,因為它通過修正旋轉、噪音、失真和傾斜等問題,提高條碼讀取的精度和速度,確保高品質的條碼生成和識別。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話