使用IRONBARCODE

C# 条形码扫描器分步教程

更新 2024年二月7日
分享:

本教程将演示如何借助第三方库创建条形码扫描器。有多个库可用于此目的,但有些是付费的,有些提供的功能较少,还有些难以实现。要找到一个免费、高效且易于实现的非常全面和有用的库是一项具有挑战性的任务。

因此,我们将使用 IronBarcode因为它是开发 .NET 条码扫描器的最佳选择。此外,它还具有免费开发、高效和易于实现等优点。IronBarcode 允许开发人员在 .NET 应用程序和网站中读写条形码和 QR 码。使用该库读写条形码只需一行代码。

.NET条形码库能读写大多数条形码和 QR 码标准。支持的条形码类型包括 code 39/93/128、UPC A/E、EAN 8/13、ITF、RSS 14 / Expanded、Databar、Codabar、Aztec、Data Matrix、MaxiCode、PDF417、MSI、Plessey、USPS 和 QR。条码结果数据包括类型、文本、二进制数据、页面和图像文件。

条码书写 API 可检查和验证格式、长度、编号和校验和,自动避免编码错误。条形码 条形码写入器可进行样式设置条形码写入器还可以写入图像文件,包括 BMP、PNG、GIF、GIFF 和 JPG。条码书写器可以写入图像文件,包括 BMP、PNG、GIF、TIFF 和 JPG。它还可以写入 PDF 或 HTML 文件.

让我们创建一个条形码扫描器,以便更好地理解它。

创建一个 Visual Studio 项目

首先,创建一个用于开发演示应用程序的 Visual Studio 项目。您也可以打开一个现有的项目。

请按照以下步骤创建一个新的控制台应用程序项目,重点关注核心功能。同样的代码可以在 Web API、MVC、Web 窗体或 Windows 窗体应用程序中实现。

1.打开 Visual Studio

2.点击创建新项目

3.选择模板,点击下一步按钮

4.命名项目,单击下一步按钮

5.选择目标框架,点击下一步按钮

6.点击创建按钮,点击下一步按钮

新项目将如下图所示创建:

C# 条码扫描器分步教程,图 1:控制台应用程序

控制台应用程序

下一步是安装 IronBarcode NuGet 软件包 才能使用其功能。

安装 IronBarcode 的 NuGet 软件包

您可以使用软件包管理器控制台、NuGet 软件包管理器解决方案安装该库,或直接从 NuGet 条形码软件包页面.

请按照以下步骤操作:

1.点击 工具 > NuGet软件包管理器 > 软件包管理器控制台

C# 条码扫描器分步教程,图 2:软件包管理器控制台用户界面

软件包管理器控制台用户界面

2.编写以下命令

Install-Package BarCode

软件包将被安装。

现在让我们编写一段扫描条形码图像的代码。

从图像文件扫描条形码

添加以下命名空间

using IronBarCode;
using IronBarCode;
Imports IronBarCode
VB   C#

接下来在主函数中编写以下代码,从图像中读取条形码数据。

var myBarcode = BarcodeReader.Read(@"D:\Barcode Images\mybarcode.jpeg");
Console.WriteLine(myBarcode);
var myBarcode = BarcodeReader.Read(@"D:\Barcode Images\mybarcode.jpeg");
Console.WriteLine(myBarcode);
Dim myBarcode = BarcodeReader.Read("D:\Barcode Images\mybarcode.jpeg")
Console.WriteLine(myBarcode)
VB   C#

"(《世界人权宣言》) 条码阅读器 类提供了一个 阅读 函数,该函数以文件路径为参数。该函数读取图像并返回条形码数据。 GIF, TIFF或为开发人员控制提供细粒度设置的 JPG,以便在性能与准确性之间取得平衡,满足特定用例的需要。

路径包含应用程序将扫描的以下条形码图像。

条形码图像

C# 条码扫描器分步教程,图 3:此控制台应用程序中使用的条码图像

本控制台应用程序中使用的条形码图像

让我们读取该条形码图像,看看该程序是否能产生正确的结果。

输出

C# 条码扫描器分步教程,图 4:运行应用程序时的控制台输出

运行应用程序时的控制台输出

可以看出,程序生成了准确的输出结果。

从 PDF 文件扫描条形码

在很多情况下,都需要从 PDF 格式的发票中扫描条形码。在本例中,我们将扫描以下发票中的条形码。

PDF 文件

C# 条码扫描器分步教程,图 5:PDF 格式的发票

PDF 格式的发票

请参考以下代码片段,扫描 PDF 文档中的条形码:

var myBarcode = BarcodeReader.ReadPdf(@"D:\Barcode Images\invoice.pdf");
foreach(var barcodeData in myBarcode)
{
    Console.WriteLine(barcodeData.Value);
}
var myBarcode = BarcodeReader.ReadPdf(@"D:\Barcode Images\invoice.pdf");
foreach(var barcodeData in myBarcode)
{
    Console.WriteLine(barcodeData.Value);
}
Dim myBarcode = BarcodeReader.ReadPdf("D:\Barcode Images\invoice.pdf")
For Each barcodeData In myBarcode
	Console.WriteLine(barcodeData.Value)
Next barcodeData
VB   C#

条码阅读器 "类提供了 阅读 PDF 函数,该函数以文件路径为参数。该函数在 PDF 文件中查找条形码图像,扫描整个条形码,并以数组形式返回数据。该函数可从文档中嵌入的每个图像中读取条形码。

一个 foreach 循环用于在控制台中打印条形码数据。

输出

发票号码会打印在控制台上。

C# 条码扫描器分步教程,图 6:控制台输出显示发票号码

控制台输出显示发票号码

从多个文件扫描条形码

本例将演示如何同时扫描图像文件中的多个条形码。

条形码图像

C# 条码扫描器分步教程,图 7:以下示例中使用的条码图像

以下样本中使用的条形码图像

请看以下代码片段,它们使用多线程读取多个条形码并扫描其结果。

List<string> barcodeList = new List<string>();
barcodeList.Add(@"D:\Barcode Images\barcode1.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode2.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode3.jpg");
var batchResults =  BarcodeReader.ReadAsync(barcodeList);
// Work with the results
foreach (var result in batchResults)
{
    string barcodeValue = result.Text;
}
List<string> barcodeList = new List<string>();
barcodeList.Add(@"D:\Barcode Images\barcode1.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode2.jpg");
barcodeList.Add(@"D:\Barcode Images\barcode3.jpg");
var batchResults =  BarcodeReader.ReadAsync(barcodeList);
// Work with the results
foreach (var result in batchResults)
{
    string barcodeValue = result.Text;
}
Dim barcodeList As New List(Of String)()
barcodeList.Add("D:\Barcode Images\barcode1.jpg")
barcodeList.Add("D:\Barcode Images\barcode2.jpg")
barcodeList.Add("D:\Barcode Images\barcode3.jpg")
Dim batchResults = BarcodeReader.ReadAsync(barcodeList)
' Work with the results
For Each result In batchResults
	Dim barcodeValue As String = result.Text
Next result
VB   C#

首先,创建一个列表来保存所有条形码图像的文件路径。然后,将 读取同步 函数被调用,该函数接收一个 `List类型作为参数,并返回数据。此方法可并行读取多个图像中的条形码。多个线程将启动并自动管理,以提高批量条码读取任务的性能。

扫描 QR 码

QR 代码的使用正在迅速增加。因此,本节将介绍如何使用 C# 扫描二维码。

QR 码

C# 条码扫描器分步教程,图 8:本演示中使用的 QR 代码

本演示中使用的二维码

请看下面的代码示例:

var qrCodeResult = BarcodeReader.Read(@"D:\Barcode Images\QRcode.jpeg");
foreach (var result in qrCodeResult)
{
    Console.WriteLine(result.Text);
}
var qrCodeResult = BarcodeReader.Read(@"D:\Barcode Images\QRcode.jpeg");
foreach (var result in qrCodeResult)
{
    Console.WriteLine(result.Text);
}
Dim qrCodeResult = BarcodeReader.Read("D:\Barcode Images\QRcode.jpeg")
For Each result In qrCodeResult
	Console.WriteLine(result.Text)
Next result
VB   C#

读取 QR 码使用的是与上述相同的 "Read "函数。这就是 IronBarcode 库提供的简便性。不同的图像源可以使用相同的函数和代码。

输出

C# 条码扫描器分步教程,图 9:QR 码阅读器的控制台输出

二维码阅读器控制台

摘要

本教程演示了一种非常简单的方法,可以从单个图像中扫描条形码、从 PDF 文档中扫描条形码,以及并行扫描多个图像和多个文档中的条形码。我们在不同的功能中使用了相同的函数。它同时提供了性能和可用性。IronBarcode 提供生成条形码和 QR 码的功能,包括 不同配置.有很多功能无法在同一篇文章中讨论。请点击 文档页面 以进一步探索 IronBarcode。

IronBarcode 是 Iron 软件套件的一部分。该套件包含其他非常有用的库,如用于读写 PDF 文件的 IronPDF、用于操作 Excel 文件的 IronXL、用于从图像中读取文本的 IronOCR 以及用于从不同网站中提取数据的 IronWebScraper。您可以购买完整的 Iron Suite 两个图书馆的价格。

< 前一页
如何为链接生成二维码(C#教程)
下一步 >
.NET QR码生成器(代码示例教程)

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

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