使用IRONBARCODE

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

更新 2024年二月7日
分享:

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

因此,我们将使用IronBarcode我们建议您使用.NET BarCode,因为它最适合开发.NET条形码扫描器。 此外,它还具有免费开发、高效和易于实施的额外优势。 IronBarcode 允许开发人员在 .NET 应用程序和网站中读写条形码和二维码。 使用该库读取或写入 BarCode 只需一行代码。

.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。 BarCode 结果数据包括类型、文本、二进制数据、页面和图像文件。

BarCode 写入 API 会检查和验证格式、长度、编号和校验和,自动避免编码错误。 "(《世界人权宣言》)条形码写入器可进行样式设置翻译的内容包括:.NET、Java、Python 或 Node js;.NET、Java、Python 或 Node js;.NET、Java、Python 或 Node js。 条码书写器可以写入图像文件,包括 BMP、PNG、GIF、TIFF 和 JPG。 它还可以写成 PDF 或HTML 文件.

让我们创建我们的 BarCode 扫描仪,以便更好地理解它。

创建 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

该软件包将被安装。

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

从图像文件扫描 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#

"(《世界人权宣言》)条码阅读器类提供了一个阅读以文件路径为参数的函数。 该函数读取图像并返回 BarCode 数据。 此方法可从 BMP、PNG 读取 BarCode、GIF、TIFF译文还必须包括:.NET、Java、Python 或 Node js、JPG 或 JPG 的详细设置,以便开发人员进行控制,在性能与准确性之间取得平衡,以满足特定用例的需要。

路径中包含应用程序将扫描的以下 BarCode 图像。

条形码图像

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

本控制台应用程序中使用的 BarCode 图像

让我们来阅读这张 BarCode 图像,看看这个程序是否能产生正确的结果。

输出

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

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

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

扫描 PDF 中的 BarCode

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

PDF 文档

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

PDF 格式的发票

请看下面的代码片段,用于扫描 PDF 文档中的 BarCode:

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 文件中查找条形码图像,扫描整个条形码,并以数组形式返回其数据。 该功能可从文档中嵌入的每个图像中读取 BarCode。

用于在控制台中打印 BarCode 数据的 foreach 循环。

输出

发票号码印在控制台上。

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

控制台输出显示发票号码

扫描多个文件中的 BarCode

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

BarCode 图像

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

以下样本中使用的 BarCode 图像

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

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#

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

扫描二维码

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

二维码

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

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

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

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