使用IRONBARCODE

如何在C# Windows应用程序中打印条形码

发布 2023年五月16日
分享:

1.0 引言

条形码是一种以可见、机器可读的格式呈现数据的方法。起初,平行线的间距、宽度和大小各不相同,以便在条形码中表示数据。这些现代的线性或一维 (1D) 条形码可由称为条形码阅读器的专用光学扫描器读取,条形码阅读器有多种类型。后来,二维 (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 窗体应用程序,或者从各种项目模板中进行选择。在本课中,我们将使用 Windows 窗体应用程序,以保持简单。

如何在 C# Windows 应用程序中打印条形码 图 1 - Windows 窗体应用程序

输入项目名称和地点。

如何在 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 使用 Iron Barcode 生成条形码

通过 IronBarcode 库,我们只需几行代码即可快速生成条形码。以下是使用 Windows 窗体生成条形码标签的示例代码:


    using IronBarCode;
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace IronBarcode_demo
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                try
                {
                    saveFileDialog1.Filter = ".png
*.png";
                    DialogResult result = saveFileDialog1.ShowDialog();
                    if (result == DialogResult.OK)
                    {
                        string filename = saveFileDialog1.FileName;
                        QRCodeWriter.CreateQrCode(textBox1.Text, 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng(filename);
                        MessageBox.Show("Barcode Generated Sucessfully");
                    }
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
    }

    using IronBarCode;
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace IronBarcode_demo
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                try
                {
                    saveFileDialog1.Filter = ".png
*.png";
                    DialogResult result = saveFileDialog1.ShowDialog();
                    if (result == DialogResult.OK)
                    {
                        string filename = saveFileDialog1.FileName;
                        QRCodeWriter.CreateQrCode(textBox1.Text, 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng(filename);
                        MessageBox.Show("Barcode Generated Sucessfully");
                    }
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
    }
Imports IronBarCode
	Imports System
	Imports System.Collections.Generic
	Imports System.ComponentModel
	Imports System.Data
	Imports System.Drawing
	Imports System.Linq
	Imports System.Text
	Imports System.Threading.Tasks
	Imports System.Windows.Forms

	Namespace IronBarcode_demo
		Partial Public Class Form1
			Inherits Form

			Public Sub New()
				InitializeComponent()
			End Sub

			Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
				Try
					saveFileDialog1.Filter = ".png *.png"
					Dim result As DialogResult = saveFileDialog1.ShowDialog()
					If result = System.Windows.Forms.DialogResult.OK Then
						Dim filename As String = saveFileDialog1.FileName
						QRCodeWriter.CreateQrCode(textBox1.Text, 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng(filename)
						MessageBox.Show("Barcode Generated Sucessfully")
					End If
				Catch ex As Exception
					MessageBox.Show(ex.Message)
				End Try
			End Sub
		End Class
	End Namespace
VB   C#

在开始代码之前,请在 .NET WinForms 应用程序中添加一个文本框。这将允许我们输入文本以生成条形码。然后在 Windows Forms 应用程序中添加一个按钮,并从示例代码中添加所需的代码。我们还将使用 "SaveFileDialog "工具,它将帮助我们将生成的条形码图像保存到所需位置。

如何在 C# Windows 应用程序中打印条形码 图 6 - 条形码文本

当用户点击 "保存条形码 "按钮时,将弹出 "另存为 "对话框,允许用户选择生成的条形码图像保存为 PNG 文件的文件名和位置。条形码根据文本框中输入的文本生成。

如何在 C# Windows 应用程序中打印条形码 图 7 - SaveAs

创建 QrCode "函数唯一需要的参数是代码图像中需要编码的数据 (我们从文本框中获取的字符串或数据流).该方法还接受另外三个可选参数:

  • 图形的默认大小为宽 500 像素、高 500 像素。
  • 纠错级别。IronBarcode 有四种纠错级别:低、中、高和最高。创建 QR 码时默认使用最高纠错级别 (QRCodeWriter.QrErrorCorrectionLevel.greatest(QRCodeWriter.QrErrorCorrectionLevel.最大)。).
  • 二维码的版本号。请访问本页,查看符合条件的替换列表。如果值为 0 (默认值),该方法将根据其编码的数据被指示使用适当的版本号。

上面的示例使用中等程度的纠错创建了一个 500 x 500 像素的图形。通过在生成的自定义二维码上使用 SaveAsPng 函数,我们可以将二维码保存为 PNG 文件,并将其保存到指定的文件位置,该位置可从 SaveAs 文件对话框中获取。

单击 这里 获取更全面的 IronBarcode 指南。

5.0 结论

IronBarcode 库因其高效性和与各种操作系统的兼容性而被认为是生成和识别条形码的最佳选择之一。它为创建和定制不同的条形码类型提供了一系列功能,包括调整文本、颜色、线宽和高度。有关该库的许可详情,请访问 网站,其中包括面向开发人员的付费和免费版本。一年内免费提供更新和支持。

< 前一页
如何在 .NET MAUI 中生成 QR 码
下一步 >
如何在ASP.NET MVC中动态生成和显示条形码

准备开始了吗? 版本: 2024.8 刚刚发布

免费NuGet下载 总下载量: 1,190,039 查看许可证 >