使用IRONQR

C# QR码读取器(逐步教程)

发布 2022年二月23日
分享:

按需生成新的各种条形码是许多商业 .NET 应用程序的一个重要方面。与其他第三方软件相比,IronBarcode 库可以快速、方便、简单地完成这项工作。本教程旨在说明如何做到这一点。

1.创建新项目

打开 Visual Studio,进入 "文件 "菜单。选择新建项目,然后选择控制台应用程序/Windows 窗体/WPF 应用程序。条形码也可用于所有类型的应用程序。此外,您还可以在 Webform/MVC/MVC Core 等应用程序中使用条形码。

C# QR 码阅读器(逐步教程),图 1:配置新项目

配置新项目

在 Visual Studio 的相应文本框中输入项目名称并选择文件路径。然后,单击创建按钮,并选择所需的 .NET Framework。现在,项目将为所选应用程序生成结构。如果您选择了控制台应用程序,现在将打开program.cs文件,您可以在其中输入代码并构建/运行应用程序。

2.安装 IronBarcode NuGet 软件包

现在进入 Visual Studio 的解决方案资源管理器,左键单击项目。从弹出菜单中选择NuGet Package Manager,然后搜索关键字 "Barcode"。在 NuGet 包对话框中选择第一个结果,然后单击安装选项。

C# QR 码阅读器(逐步教程),图 2:从 NuGet 包管理器安装 IronBarcode 库

从 NuGet 软件包管理器安装 IronBarcode 库

或者,在 Visual Studio 中按照以下说明操作: 转到 工具 > NuGet软件包管理器 > 软件包管理器控制台

打开 "软件包管理器控制台"选项卡。键入以下一行:

Install-Package IronQR

C# QR 码阅读器(逐步教程),图 3:NuGet 软件包管理器控制台

NuGet软件包管理器控制台

请访问以下链接,了解有关条码阅读器 SDK 最新版本的更多信息。

https://www.nuget.org/packages/barcode

接下来,软件包将下载所有 DLL 文件,并将 DLL 文件的引用作为 .NET 项目引用添加到当前项目中。

现在,Visual Studio 项目就可以在代码中使用了。

3.添加参考资料

如下所示,在代码中添加 "IronBarCode "引用,允许使用 .NET Core 中 IronBarcode 库中的可用函数。要了解有关条码阅读器控件、读取 QR 代码、组件、QR 代码类型支持以及条码阅读器 SDK 兼容性的更多信息,请参阅此链接: https://ironsoftware.com/csharp/barcode/

使用 IronBarCode;

4.创建条码实例

条码阅读器 是用于读取/创建二维码的静态类。使用时无需为静态类 "BarcodeReader "创建任何对象实例。条码阅读器控件可使用单一函数扫描 15 种类型的条码 阅读读取同步.IronBarcode 库可以读取各种来源的二维码/条形码:

  • 字符串
  • 图像
  • 位图

5.使用 String 读取条形码

使用 .NET 条码阅读器库可以轻松读取 QR 代码和条码图像。Read "方法是一个静态函数,用于扫描二维码图像并将二维码和条形码解码为文本。它接受各种类型的图像文件,如位图、PNG 文件、JPEG、TIFF 等。

该 "Read "函数从图像中提取 QR 码/条形码数据,并以对象 "BarcodeResult "的形式检索结果。如果代码无法识别图像文件,它将返回空值。

图像文件 条码结果 有以下值

  • 条码类型
  • 文本
  • 二进制值

BarcodeType 是一个枚举数据类型,它返回给定输入图像的条码类型。IronBarcode 支持 22 种条码类型。它将返回应用于给定输入图像的条形码类型。

Value 和 text 也是 BarcodeResult 中可用的对象类型值。value 和 text 都是字符串数据类型。它返回条形码的字符串值。Read 方法将读取 QR 码和条形码,并将给定条形码图像的字符串值转换为值/文本。二进制值是字节数据类型,返回给定图像的字节。以下是快速响应代码,可复制编码到任何 .NET Windows 窗体或 .NET 标准应用程序中。

BarcodeResult result = BarcodeReader.Read("test.bmp");
// Assert that IronBarCode Works :-)
if (result != null && result.Text == "https://ironsoftware.com/csharp/barcode")
{
    System.Console.WriteLine("Success");
}
BarcodeResult result = BarcodeReader.Read("test.bmp");
// Assert that IronBarCode Works :-)
if (result != null && result.Text == "https://ironsoftware.com/csharp/barcode")
{
    System.Console.WriteLine("Success");
}
Dim result As BarcodeResult = BarcodeReader.Read("test.bmp")
' Assert that IronBarCode Works :-)
If result IsNot Nothing AndAlso result.Text = "https://ironsoftware.com/csharp/barcode" Then
	System.Console.WriteLine("Success")
End If
VB   C#

上述代码演示了如何使用 .NET 条形码阅读器库读取 QR 码和条形码。该代码简单易用,可将系统中的文件映射到位图对象中。它还能从图像中解码 QR 码/条形码,并将结果显示在对象中。以下是代码中提供的 QR 码/条形码,可用于扫描编码数据。

C# QR 码阅读器(逐步教程),图 4:条形码输入

条形码输入

6.从 TIFF 图像中读取多个条形码

.NET条形码阅读器控件允许使用相同的 "Read "方法从图像文件中读取多个QR码/条形码,非常易于使用。

以下是从图像中读取多个 QR 代码的示例代码:

// Configure options
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
    ExpectBarcodeTypes = BarcodeEncoding.Code128,
    ExpectMultipleBarcodes = true,
};

BarcodeResult [] multiFrameResults = BarcodeReader.Read("Multiframe.tiff", options);
// Configure options
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
    ExpectBarcodeTypes = BarcodeEncoding.Code128,
    ExpectMultipleBarcodes = true,
};

BarcodeResult [] multiFrameResults = BarcodeReader.Read("Multiframe.tiff", options);
' Configure options
Dim options As New BarcodeReaderOptions() With {
	.ExpectBarcodeTypes = BarcodeEncoding.Code128,
	.ExpectMultipleBarcodes = True
}

Dim multiFrameResults() As BarcodeResult = BarcodeReader.Read("Multiframe.tiff", options)
VB   C#

在上述代码中,QR 代码是从 TIFF QR 代码图像中提取的。.NET条形码阅读器从系统图像中扫描 QR 码,并将结果作为数组返回。在上述代码中,条形码为 代码 128 是唯一被扫描的类型。如果图像上有其他条形码,它们将被忽略。

7.从 PDF 阅读 QR 码和条形码

本节演示如何从 PDF 文档中读取 QR 码。QR 码库将扫描所有可用页面和文件中的所有可用 QR 码,或专注于一种特定类型的条形码。使用 IronBarcode 时,该库提供了标准条形码阅读器所需的所有相关 DLL,因此无需将任何其他 DLL 作为 .NET 项目参考。

以下是可用于从 PDF 中读取 QR 码/条码的示例复制代码。

PagedBarcodeResult [] pagedResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (PagedBarcodeResult pageRes in pagedResults)
{
    int pageNumber = pageRes.PageNumber;
    string value = pageRes.Value;
    Bitmap img = pageRes.BarcodeImage;
    BarcodeEncoding barcodeType = pageRes.BarcodeType;
    byte [] binary = pageRes.BinaryValue;
    Console.WriteLine(pageRes.Value);
}
PagedBarcodeResult [] pagedResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (PagedBarcodeResult pageRes in pagedResults)
{
    int pageNumber = pageRes.PageNumber;
    string value = pageRes.Value;
    Bitmap img = pageRes.BarcodeImage;
    BarcodeEncoding barcodeType = pageRes.BarcodeType;
    byte [] binary = pageRes.BinaryValue;
    Console.WriteLine(pageRes.Value);
}
Dim pagedResults() As PagedBarcodeResult = BarcodeReader.ReadPdf("MultipleBarcodes.pdf")
' Work with the results
For Each pageRes As PagedBarcodeResult In pagedResults
	Dim pageNumber As Integer = pageRes.PageNumber
	Dim value As String = pageRes.Value
	Dim img As Bitmap = pageRes.BarcodeImage
	Dim barcodeType As BarcodeEncoding = pageRes.BarcodeType
	Dim binary() As Byte = pageRes.BinaryValue
	Console.WriteLine(pageRes.Value)
Next pageRes
VB   C#

以上是读取 PDF 文件中二维码/条形码的示例代码,只需通过简单的 阅读 PDF 方法。它还可以提供每个条形码及其类型的详细结果。

结论

.NET条形码阅读器提供了一种简单易行的方法,可通过简单的步骤读取QR码或解码/创建QR码和条形码。IronBarcode DLL 可用于各种环境,如 .NET Windows 窗体应用程序、移动应用程序和 Web 应用程序、 毛伊岛Blazor IronBarcode 可使用 .NET Framework 或 .NET Standard。此外,IronBarcode 还提供多种自定义选项,以提高条形码读取速度,例如 作物区多线程ML 模型的准确性.IronBarcode 提供免费试用密钥,您也可以用购买两个产品的价格从 Iron Software 购买五个产品。

访问 许可页面 了解更多信息。

您还可以下载 压缩文件项目.

< 前一页
如何在VB .NET中创建二维码

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

免费NuGet下载 总下载量: 14,702 查看许可证 >