与其他组件比较

IronBarcode与Aspose.Barcode的比较

发布 2022年四月27日
分享:

简介

条形码是一种机器可读的可视化数据表示。条形码最早是通过改变平行线的长度和间距来表示数据的。这些线性或一维 (1D) 条形码可以使用称为条形码阅读器的特殊光学扫描器进行扫描,条形码阅读器有多种类型。后来,二维 (2D) 尽管二维条码不使用条形码,但使用矩形、点、六边形和其他图案的二维条码仍被开发出来,并被称为矩阵码。有各种配置的专用二维光学扫描仪可以读取二维条形码。连接到微型计算机上的数码相机可以拍摄条形码的照片,同时运行扫描二维条形码的软件--通过分析图像解构条形码,然后进行解码。使用专门的应用软件,内置摄像头的移动设备(如智能手机)可以充当后一种二维条形码扫描器。

在本文中,我们将比较两种流行的条形码库

  • Aspose.Barcode
  • 铁条码

这两个库均可用于生成和识别条形码。该程序支持所有 .NET 框架,并可轻松保存条形码图像。

特点

Aspose.Barcode

Aspose.BarCode for .NET是一款复杂的工具,可让您从任何角度从各种图片源创建和识别一维和二维条码。开发人员可将条码创建和扫描功能简单地添加到.NET 应用程序中。它还可以将创建的条形码导出为多种高质量图片格式,以及用于创建新条形码和从各种角度识别旧条形码的 API。它支持 60 多种不同的一维、二维和邮政条形码符号。

Aspose.BarCode for .NET允许您更改所创建条形码的背景颜色、条形颜色、旋转角度、X维度、图像质量、分辨率、标题、尺寸等。API 还支持各种识别和成像功能以及各种符号。

  • Aspose 只需几行代码就能生成和识别 40 多种条形码符号。
  • 从任何角度读取条形码。
  • 在物理或虚拟打印机上轻松打印条形码标签。
  • 支持校验和及条形码补充数据。
  • 改进了 Code128 编码。
  • 设置扫描条形码的图像区域。
  • 创建取决于设备分辨率的图像。
  • 识别格式和图像:JPEG、TIFF、PNG、BMP、GIF、EXIF 将条形码标签保存为图像:EMF、SVG 平台独立条码、二维条码和邮政条码。

IronBarcode

IronBarcode for .NET允许程序员在.NET应用程序和网站中读写条形码和QR码。IronBarcode 只需一行代码即可读写条形码。使用.NET条形码库可以读写大多数条形码和二维码标准。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 是其中最常见的一些。类型、文本、二进制数据、页面和图片文件都包含在条码结果数据中。IronBarcode 的 API 功能如下:

  • IronBarcode 可读写大多数条形码类型和 QR 标准,包括 UPC A/E, EAN 8/13, Code 39/93/128, ITF, MSI, RSS 14/Expanded, Databar, CodaB
  • Ar, QR, Styled QR, Data Matrix, MaxiCode, PDF417, Plessey 和 Aztec。结果提供的条形码数据、类型、页面、文本和条形码图片非常适合存档或索引系统。
  • 图像预处理提高读取速度和准确性--IronBarcode 可自动对条形码图片进行预处理,以提高读取速度和准确性。它可以读取扫描或实时视频帧,以及纠正旋转、噪音、扭曲和倾斜。批处理服务器应用程序可利用多个内核和线程。在单页和多页文档中自动查找一个或多个条形码。无需使用复杂的应用程序接口,即可搜索特定的条形码种类或文档位置。
  • 专为 .NET 项目设计--只需几行代码即可在几分钟内启动并运行。为.NET框架构建,作为一个单一的DLL,没有依赖性;支持32位和64位,可用于任何.NET和dot net核心语言。支持网络、云、桌面和控制台应用程序中的移动和桌面设备。

  • 为多种文件格式创建条形码和 QR 码--以多种文件和流格式保存和打印到文件或流,包括 PDF、JPG、TIFF、GIF、BMP、PNG 和 HTML。颜色、质量、旋转、大小和文本都可以更改。

1.创建新项目

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

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

2.安装条码库

2.1 使用 IronBarcode

IronBarcode 库可通过四种方式下载和安装。

它们是

  • 使用 Visual Studio
  • 使用 Visual Studio 命令行
  • 从 NuGet 网站直接下载。
  • 从 IronBarcode 网站直接下载。

2.1.1 使用 Visual Studio

Visual Studio 软件提供了 NuGet 包管理器选项,可直接将软件包安装到解决方案中。下面的截图显示了如何打开 NuGet 包管理器。

它提供了一个搜索框,用于显示 NuGet 网站上的软件包列表。在软件包管理器中,我们需要搜索关键字 "Barcode",如下图所示:

从上图中,我们将看到相关搜索结果的列表。我们需要选择所需的选项,将软件包安装到解决方案中。

2.1.2 使用 Visual Studio 命令行

在 Visual Studio 中,转到 Tools-> NuGet Package Manager -> Package Manager Console

在控制台选项卡中输入以下一行:

Install-Package BarCode

现在,软件包将下载/安装到当前项目中,并可随时使用。

2.1.3 直接从 NuGet 网站下载

第三种方法是直接从网站下载软件包。

  • 导航至 链接
  • 从右侧菜单中选择下载软件包选项。
  • 双击下载的软件包。软件包将自动安装。
  • 接下来,重新加载解决方案并开始在项目中使用。

2.1.4 直接从 IronBarcode 网站下载

点击链接"https://ironsoftware.com/csharp/barcode/packages/IronBarCode.zip" 这里直接从网站下载最新软件包。下载完成后,请按照以下步骤将软件包添加到项目中。

  • 在解决方案窗口中右键单击项目。
  • 接着,选择参考选项,然后浏览下载参考的位置。

  • 然后单击 "确定 "添加引用。

2.2 使用 Aspose.BarCode

Aspose.BarCode 库可以通过四种方式下载和安装。

它们是

  • 使用 Visual Studio
  • 使用 Visual Studio 命令行
  • 从 NuGet 网站直接下载。
  • 从 IronBarcode 网站直接下载。

2.2.1 使用 Visual Studio

这种方法与上述 IronBarcode 的方法类似。我们唯一需要更改的是搜索条件,如下图所示。

选择第一个选项,下载 Aspose.Barcode 库。

2.2.2 使用 Visual Studio 命令行

在 Visual Studio 中,转到 Tools-> NuGet Package Manager -> Package Manager Console

在软件包管理器控制台选项卡中输入以下一行。

Install-Package Aspose.BarCode

现在,软件包将下载/安装到当前项目中,并可随时使用。

2.2.3 直接从 NuGet 网站下载

第三种方法是直接从网站下载软件包。

只需点击 这里 就会重定向到 NuGet 网站,在这里你可以下载软件包。

2.2.4 直接从 Aspose 网站下载

点击 链接 在这里,它将重定向到软件包版本列表,我们可以选择需要的版本进行下载。下载完成后,按照以下步骤将软件包添加到项目中。

  • 在解决方案窗口中右键单击项目。
  • 接着,选择选项参考,然后浏览下载参考的位置。

  • 然后单击 "确定 "添加引用。

3.生成条形码

使用 IronBarcode 和 Aspose.Barcode 可以轻松生成条形码。让我们通过一个示例来了解一下。

3.1 使用 IronBarcode

IronBarcode 可用于创建条码标签,并可保存为多种图像格式。我们还可以传递需要生成的条形码类型。以下是生成条形码的片段:

var MyBarCode = BarcodeWriter.CreateBarcode("123456",                    
        BarcodeEncoding.Code128) 
MyBarCode.AddAnnotationTextBelowBarcode("123456");
MyBarCode.SaveAsImage("MyBarCode.jpeg");
var MyBarCode = BarcodeWriter.CreateBarcode("123456",                    
        BarcodeEncoding.Code128) 
MyBarCode.AddAnnotationTextBelowBarcode("123456");
MyBarCode.SaveAsImage("MyBarCode.jpeg");
Dim MyBarCode = BarcodeWriter.CreateBarcode("123456", BarcodeEncoding.Code128) MyBarCode.AddAnnotationTextBelowBarcode("123456")
MyBarCode.SaveAsImage("MyBarCode.jpeg")
VB   C#

Barcodewriter.createbarcode 是 IronBarcode 命名空间中的一个静态类。我们需要在创建条形码函数中传递两个字符串参数,以便转换条形码类型。我们还可以使用 CreateBarcode 函数指定条形码的高度和宽度,但这是可选项,生成条形码时并不需要。

发送参数后,它将返回条形码对象,而条形码对象又将返回不同的条形码属性,我们可以使用这些属性添加属性,如上面的示例代码。AddAnnotationTextBelowBarcode 是允许我们在条形码标签下方或上方添加文本的属性之一。如果需要,我们还可以隐藏条形码文本。在上述代码中,ipeg 生成器可帮助条形码保存为 jpeg 图像格式。

除图像格式外,我们还可以导出 HTML 格式的条形码。我们可以生成不同类型的图像,并以不同的图像格式保存。此外,我们还能从给定的条形码图像中读取多个条形码。

 var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("Hello World",                       "logo.png",500);
QRWithLogo.ChangeBarCodeColor(System.Drawing.Color.DarkGreen);
QRWithLogo.SaveAsJpeg("Logoqr.jpeg");
 var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("Hello World",                       "logo.png",500);
QRWithLogo.ChangeBarCodeColor(System.Drawing.Color.DarkGreen);
QRWithLogo.SaveAsJpeg("Logoqr.jpeg");
Dim QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("Hello World", "logo.png",500)
QRWithLogo.ChangeBarCodeColor(System.Drawing.Color.DarkGreen)
QRWithLogo.SaveAsJpeg("Logoqr.jpeg")
VB   C#

上面的示例表明,我们可以在 QR 码内生成带有图像的条形码。CreateQrCodeWithLogo 是一个允许我们执行此任务的函数。我们还使用了 ChangeBarCodeColor 函数,该函数将帮助我们更改条形码/QR 码的颜色。IronBarcode 中的这些函数可以帮助我们创建用于商业目的的自定义条形码。

3.2 使用 Aspose.Barcode

Aspose.BarCode 可用于生成条码。我们可以生成不同类型的条形码。以下代码片段可用于创建条形码:

BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code128,                                  
                 "123456");
     generator.Save("output.jpg", BarCodeImageFormat.Jpeg);
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code128,                                  
                 "123456");
     generator.Save("output.jpg", BarCodeImageFormat.Jpeg);
Dim generator As New BarcodeGenerator(EncodeTypes.Code128, "123456")
	 generator.Save("output.jpg", BarCodeImageFormat.Jpeg)
VB   C#

上面的代码表明,BarcodeGenerator 是一个类,我们可以通过创建对象来生成条形码。我们需要传递两个参数:一个是条形码类型,另一个是创建条形码所需的条形码字符串。它将被转换为 BarcodeGenerator 对象。

条码生成器对象提供了一个名为保存的函数,允许我们将创建的条码保存为给定代码片段中的 jpeg 图像格式。不仅是 jpeg 格式,我们还可以保存为不同的条形码属性,如 Jpeg tiff 等、

条码高度和宽度可使用单独的函数进行调整。条码生成器对象有一个值用于设置:"参数.条码.XDimension.毫米 "允许我们指定行的高度和宽度。

结果:

上图是这些库的性能比较。时间以毫秒为单位计算。

4 识别条形码

通过 IronBarcode 和 Aspose.Barcodes,我们可以识别不同图像格式的条形码及其所属类型。让我们来详细了解一下。

4.1 使用 IronBarcode

IronBarcode 可帮助从不同的图像格式中读取条码,并可通过三种方式进行定义:字符串、流或图像,如 jpeg、tiff、Bitmap 等。以下示例使用字符串方式从图像中读取条形码。

BarcodeResult QRResult = BarcodeReader.QuicklyReadOneBarcode                   
            ("MyBarCode.jpg");
    if (QRResult != null)
    {               
           Console.WriteLine(QRResult.Value);                
           Console.WriteLine(QRResult.BarcodeType);            
    }
BarcodeResult QRResult = BarcodeReader.QuicklyReadOneBarcode                   
            ("MyBarCode.jpg");
    if (QRResult != null)
    {               
           Console.WriteLine(QRResult.Value);                
           Console.WriteLine(QRResult.BarcodeType);            
    }
Dim QRResult As BarcodeResult = BarcodeReader.QuicklyReadOneBarcode("MyBarCode.jpg")
	If QRResult IsNot Nothing Then
		   Console.WriteLine(QRResult.Value)
		   Console.WriteLine(QRResult.BarcodeType)
	End If
VB   C#

以上描述了我们正在使用的 BarcodeReader 类,该类具有不同的属性。其中一个属性是 QuicklyReadOneBarcode,它可帮助我们从图像格式中读取条形码。它还能帮助我们将其转换为 BarcodeResult 对象。通过该对象,我们可以从图像中读取条码值和条码类型。

BarcodeResult 具有以下值:

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

输入图像中的条形码类型由 BarcodeType 返回,BarcodeType 是一种枚举数据类型。IronBarcode 总共支持 22 种条形码格式。将返回应用于所提供输入图像的条形码类型。

BarcodeResult 中可用的对象类型值也包括值和文本。字符串数据类型包括值和文本。这些类型可返回条形码的字符串值。QuicklyReadOneBarcode 读取 QR 码或条形码,并将图像的字符串值转换为值/文本。二进制值是字节数据类型,返回图像的字节。快速应答代码如下所示,可粘贴到任何 net windows 窗体或 net 标准应用程序中。

4.2 使用 Aspose.Barcode

在 BarCode for .NET 中,条码识别的源代码可以通过三种方式定义:图像文件、流或位图。BMP、PNG、JPEG、GIF 和 TIFF 是可用于从文件中读取条码的五种图片格式。此外,还提供了三种不同模式的实现细节。以下是使用字符串方法的示例。

using (BarCodeReader reader = new BarCodeReader(@"MyBarCode.jpg"))
  {
         foreach (BarCodeResult result in reader.ReadBarCodes())
          {
             Console.WriteLine("Type: " + result.CodeType);
             Console.WriteLine("CodeText: " + result.CodeText);
         }
   }
using (BarCodeReader reader = new BarCodeReader(@"MyBarCode.jpg"))
  {
         foreach (BarCodeResult result in reader.ReadBarCodes())
          {
             Console.WriteLine("Type: " + result.CodeType);
             Console.WriteLine("CodeText: " + result.CodeText);
         }
   }
Using reader As New BarCodeReader("MyBarCode.jpg")
		 For Each result As BarCodeResult In reader.ReadBarCodes()
			 Console.WriteLine("Type: " & result.CodeType)
			 Console.WriteLine("CodeText: " & result.CodeText)
		 Next result
End Using
VB   C#

上述代码表明,我们正在从 jpeg 格式中读取条形码。BarcodeReader 是一个可以帮助我们使用图像路径作为参数读取条形码图像的类。一旦我们传递了图像路径,它就会将图像转换为条码阅读器对象。然后,我们就可以使用该对象从图像中获取值。

条码阅读器对象有一个名为 ReadBarCodes 的函数().这将有助于我们获取图像中的所有可用代码。使用 "for 循环",我们可以逐个获取图像,并将其保存在 BarCodeResult 对象中。通过该对象,我们可以读取条形码的值和类型。这样,我们就可以一次读取多个条形码。

5.结论

IronBarcode 是帮助我们生成和识别条形码的最强大的库之一。它也是生成和识别条形码速度最快的库之一。该库支持多种操作系统。它支持多种条形码格式,且易于创建。我们可以更改颜色、行高、行宽、条形码文本等。许可证详细信息可参见 这里.

Aspose.BarCode 也是一个功能强大的库,用于生成和读取不同图像格式的条形码。我们可以使用各种图像格式来读取和创建。Aspose 还为我们提供了改变条形码外观的选项,如高度、宽度、条形码文本等。 这里.

与 Aspose.Barcode 相比,IronBarcode 确实具有一些优势。当我们比较识别和生成条形码的处理时间时,IronBarcode 比 Aspose.Barcode 更快。IronBarcode 还具有多种属性,不仅可以从不同的图像格式中读取条形码,还可以从 PDF 文档中读取条形码。我们还可以在条形码和 QR 码中添加图像,这是其他任何库都不具备的功能。

< 前一页
IronBarcode和ZXing.NET的比较
下一步 >
IronBarcode与Spire Barcode的比较

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

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