在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
如果您的技术手机/管理手机中已经有了条形码的电子图像,并希望将其破译为英文文本数据,那么条形码扫描仪可能不是最佳工具。此外,条形码扫描仪只能读取一维条形码,而一维条形码的存储容量、域状态和支持格式都受到限制,而且只能与 Windows RT 类库一起使用。如今,二维条形码 (也称二维码) 更常见,可以存储更多信息,如更新日期。
条形码扫描应用程序可在 Windows、MacOS 或 Linux 上运行,无需依赖任何第三方工具或 API,因为它受 .NET 支持。
创建和扫描条形码已成为许多企业避免垃圾邮件的必要手段。创建条形码的两个流行工具是开源的 ZXing 项目解码和扫描条形码。 IronBarcode.在本文中,我们将探讨每种工具的功能和优势,并对它们进行比较。
ZXing 是一个流行的开源库,用于生成和解码一维和二维条形码。
它还支持多种编程语言,包括 Java、C++ 和 .NET。
ZXing Decoder Online 是一款基于网络的工具,用户可以使用它对条形码和 QR 码图像进行扫描和解码。此外,用户还可以为任何信息创建 QR 码,这些信息通常以 URL 或文本的形式存在。
要使用 ZXing 在线解码器,请按照以下步骤操作:
1.访问 ZXing Decoder Online 网站。
![ZXing.org QR 码库和 IronBarcode:综合比较:图 2 - 谷歌开发的 ZXing Web](/static-assets/barcode/blog/zxing-org-comparison/zxing-org-comparison-2.webp)
2.点击 "选择文件 "按钮,选择 QR 码图像文件。
3.选择图像后,点击 "提交 "按钮。
![ZXing.org QR 码库和 IronBarcode:综合比较:图 3 - ZXing 解码](/static-assets/barcode/blog/zxing-org-comparison/zxing-org-comparison-3.webp)
4.如果找到可识别的二维码,该工具就会对二维码进行解码,并显示解码后的信息。
该库易于使用,可集成到网络应用程序、移动应用程序和桌面应用程序中。
ZXing 已被广泛采用,并拥有一个庞大的开发人员社区,为其开发做出贡献并提供支持。
该库收集设备信息,如设备型号和操作系统版本,这可能被视为潜在的安全风险。
此外,由于该库并非由独立机构维护,一些人对其所有权和控制权表示担忧。
总之,ZXing 是一个功能强大、用途广泛的条形码生成和解码库,得到了广泛采用和社区支持。
例如,要使用 ZXing 生成 QR 代码,开发人员只需编写几行代码即可:
using ZXing;
using ZXing.QrCode;
// Generate a QR code
BarcodeWriter writer = new BarcodeWriter();
writer.Format = BarcodeFormat.QR_CODE;
Bitmap qrCode = writer.Write("Hello, ZXing!");
using ZXing;
using ZXing.QrCode;
// Generate a QR code
BarcodeWriter writer = new BarcodeWriter();
writer.Format = BarcodeFormat.QR_CODE;
Bitmap qrCode = writer.Write("Hello, ZXing!");
Imports ZXing
Imports ZXing.QrCode
' Generate a QR code
Private writer As New BarcodeWriter()
writer.Format = BarcodeFormat.QR_CODE
Dim qrCode As Bitmap = writer.Write("Hello, ZXing!")
要使用 ZXing 项目解码 QR 代码,开发人员可以使用以下代码:
using ZXing;
using ZXing.QrCode;
// Decode a QR code
BarcodeReader reader = new BarcodeReader();
Result result = reader.Decode(qrCode);
string text = result.Text;
using ZXing;
using ZXing.QrCode;
// Decode a QR code
BarcodeReader reader = new BarcodeReader();
Result result = reader.Decode(qrCode);
string text = result.Text;
Imports ZXing
Imports ZXing.QrCode
' Decode a QR code
Private reader As New BarcodeReader()
Private result As Result = reader.Decode(qrCode)
Private text As String = result.Text
IronBarcode 是 Iron Software 为 .NET 开发人员创建的一款功能强大的条码生成和扫描库。
IronBarcode 提供了一个易于使用的 API,允许开发人员生成和扫描各种条形码类型,包括 QR 码、数据矩阵码和 UPC-A 条形码。
IronBarcode 库是由 Iron Software 创建的,作为扩展 ZXing.NET 图书馆
他们还增加了新的特性和功能,如生成二维条形码、PDF417 条形码以及直接从图像文件读取条形码的功能。
下面是一个如何使用 IronBarcode 生成 QR 码的示例:
using IronBarCode;
// Generate a QR code
var barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode);
barcode.SaveAsImage("qrcode.png");
using IronBarCode;
// Generate a QR code
var barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode);
barcode.SaveAsImage("qrcode.png");
Imports IronBarCode
' Generate a QR code
Private barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode)
barcode.SaveAsImage("qrcode.png")
要使用 IronBarcode 扫描条形码,您可以使用以下代码:
using IronBarCode;
// Scan a barcode
var barcode = BarcodeReader.ReadBarcode("qrcode.png", BarcodeEncoding.QRCode);
string text = barcode.Text;
using IronBarCode;
// Scan a barcode
var barcode = BarcodeReader.ReadBarcode("qrcode.png", BarcodeEncoding.QRCode);
string text = barcode.Text;
Imports IronBarCode
' Scan a barcode
Private barcode = BarcodeReader.ReadBarcode("qrcode.png", BarcodeEncoding.QRCode)
Private text As String = barcode.Text
IronBarcode 支持多种条形码类型,包括二维条形码、UPC-A、UPC-E、EAN-8、EAN-13、Code39、Code128、PDF417 等。
它基于 ZXing.NET 库,提供更快、更准确的条形码扫描和生成,同时还增加了新的特性和功能。
以下是如何使用 IronBarcode 的一些步骤:
要在 .NET 项目中使用 IronBarcode,首先需要使用 NuGet 安装 IronBarcode 库。在 NuGet 软件包管理器控制台中运行以下命令即可完成安装:
Install-Package IronBarCode
要使用 IronBarcode 生成条码,您可以使用 BarcodeWriter 类。
using IronBarCode;
// Generate a QR code
var barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode);
barcode.SaveAsImage("qrcode.png");
using IronBarCode;
// Generate a QR code
var barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode);
barcode.SaveAsImage("qrcode.png");
Imports IronBarCode
' Generate a QR code
Private barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode)
barcode.SaveAsImage("qrcode.png")
这段代码会创建一个 QR 码,上面的文字是 "你好,IronBarcode"。!"并将其保存为名为 "qrcode.png "的图像文件。
要使用 IronBarcode 扫描条码,您可以使用 BarcodeReader
类。
using IronBarCode;
// Scan a QR code
var barcode = BarcodeReader.ReadBarcode("qrcode.png", BarcodeEncoding.QRCode);
string text = barcode.Text;
using IronBarCode;
// Scan a QR code
var barcode = BarcodeReader.ReadBarcode("qrcode.png", BarcodeEncoding.QRCode);
string text = barcode.Text;
Imports IronBarCode
' Scan a QR code
Private barcode = BarcodeReader.ReadBarcode("qrcode.png", BarcodeEncoding.QRCode)
Private text As String = barcode.Text
此代码从图像文件 "qrcode.png "中读取 QR 码,并返回条形码中编码的文本。
IronBarcode 提供一系列自定义选项,允许您控制生成的条码扫描执行的外观和行为。
下面是一个如何使用 IronBarcode 定制 QR 码的示例,用于 条形码扫描 执行:
using IronBarCode;
// Customize a QR code
var barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode);
barcode.ResizeTo(400, 400);
barcode.SetMargins(20);
barcode.SetForegroundColor(Color.Black);
barcode.SetBackgroundColor(Color.White);
barcode.AddCaptionAbove("Scan me with your smartphone!");
barcode.AddImageLogo("logo.png", 80, 80);
barcode.SaveAsImage("qrcode.png");
using IronBarCode;
// Customize a QR code
var barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode);
barcode.ResizeTo(400, 400);
barcode.SetMargins(20);
barcode.SetForegroundColor(Color.Black);
barcode.SetBackgroundColor(Color.White);
barcode.AddCaptionAbove("Scan me with your smartphone!");
barcode.AddImageLogo("logo.png", 80, 80);
barcode.SaveAsImage("qrcode.png");
Imports IronBarCode
' Customize a QR code
Private barcode = BarcodeWriter.CreateBarcode("Hello, IronBarcode!", BarcodeWriterEncoding.QRCode)
barcode.ResizeTo(400, 400)
barcode.SetMargins(20)
barcode.SetForegroundColor(Color.Black)
barcode.SetBackgroundColor(Color.White)
barcode.AddCaptionAbove("Scan me with your smartphone!")
barcode.AddImageLogo("logo.png", 80, 80)
barcode.SaveAsImage("qrcode.png")
该代码会生成一个 QR 码,上面写着 "你好,IronBarcode"。!",并对其进行自定义,将其大小调整为 400x400 像素,添加 20 像素边距,将前景色设置为黑色,背景色设置为白色,在条形码上方添加标题,并添加徽标图像。
IronBarcode 建立在开源的 ZXing 库之上,但它扩展了 ZXing 库的功能,以支持更广泛的条形码类型,包括 QR 码、Code 128、Code 39、EAN-13、EAN-8、UPC-A 等等。
以下是 IronBarcode 的部分功能:
IronBarcode 可轻松生成各种类型和样式的条形码,包括线性条形码和二维条形码,并可自定义颜色、文本和图像叠加等功能。以下代码片段可生成 QR 码:
var barcode = IronBarCode.BarcodeWriter.CreateBarcode("Hello World!", IronBarCode.BarcodeWriterEncoding.QRCode);
barcode.SaveAsJpeg("QRCode.jpg");
var barcode = IronBarCode.BarcodeWriter.CreateBarcode("Hello World!", IronBarCode.BarcodeWriterEncoding.QRCode);
barcode.SaveAsJpeg("QRCode.jpg");
Dim barcode = IronBarCode.BarcodeWriter.CreateBarcode("Hello World!", IronBarCode.BarcodeWriterEncoding.QRCode)
barcode.SaveAsJpeg("QRCode.jpg")
IronBarcode 还提供功能强大的条码扫描器,可从图像、PDF 文件和实时摄像机流中读取条码。以下代码可从图像文件中读取 QR 码:
var barcode = IronBarCode.BarcodeReader.Read("QRCode.jpg", IronBarCode.BarcodeReaderEncoding.QRCode);
Console.WriteLine(barcode.Text);
var barcode = IronBarCode.BarcodeReader.Read("QRCode.jpg", IronBarCode.BarcodeReaderEncoding.QRCode);
Console.WriteLine(barcode.Text);
Dim barcode = IronBarCode.BarcodeReader.Read("QRCode.jpg", IronBarCode.BarcodeReaderEncoding.QRCode)
Console.WriteLine(barcode.Text)
IronBarcode 还可以验证条形码,以确保条形码是有效的,可以被其他条形码阅读器扫描。以下代码片段验证了 Code 128 条形码:
var barcode = IronBarCode.BarcodeReader.Read("Code128.jpg", IronBarCode.BarcodeReaderEncoding.Code128);
if (barcode.IsValid)
{
Console.WriteLine("Barcode is valid.");
}
else
{
Console.WriteLine("Barcode is invalid.");
}
var barcode = IronBarCode.BarcodeReader.Read("Code128.jpg", IronBarCode.BarcodeReaderEncoding.Code128);
if (barcode.IsValid)
{
Console.WriteLine("Barcode is valid.");
}
else
{
Console.WriteLine("Barcode is invalid.");
}
Dim barcode = IronBarCode.BarcodeReader.Read("Code128.jpg", IronBarCode.BarcodeReaderEncoding.Code128)
If barcode.IsValid Then
Console.WriteLine("Barcode is valid.")
Else
Console.WriteLine("Barcode is invalid.")
End If
IronBarcode 可以将条码从一种格式转换为另一种格式,例如将 Code 39 条码转换为 QR 码。以下代码片段可将 Code 39 条形码转换为 QR 码:
var barcode = IronBarCode.BarcodeReader.Read("Code39.jpg", IronBarCode.BarcodeReaderEncoding.Code39);
var qrCode = IronBarCode.BarcodeWriter.CreateBarcode(barcode.Text, IronBarCode.BarcodeWriterEncoding.QRCode);
qrCode.SaveAsJpeg("QRCode.jpg");
var barcode = IronBarCode.BarcodeReader.Read("Code39.jpg", IronBarCode.BarcodeReaderEncoding.Code39);
var qrCode = IronBarCode.BarcodeWriter.CreateBarcode(barcode.Text, IronBarCode.BarcodeWriterEncoding.QRCode);
qrCode.SaveAsJpeg("QRCode.jpg");
Dim barcode = IronBarCode.BarcodeReader.Read("Code39.jpg", IronBarCode.BarcodeReaderEncoding.Code39)
Dim qrCode = IronBarCode.BarcodeWriter.CreateBarcode(barcode.Text, IronBarCode.BarcodeWriterEncoding.QRCode)
qrCode.SaveAsJpeg("QRCode.jpg")
以下是 IronBarcode 优于 ZXing 的几个方面:
性能: IronBarcode 比 ZXing 更快,是需要高速条形码扫描和生成的网络应用程序的最佳选择。
易用性: IronBarcode的API简单直观,只需几行代码即可轻松创建和扫描条形码。另一方面,ZXing 的 API 可能比较复杂,初学者很难使用。
输出质量: IronBarcode 生成的条形码质量高,即使尺寸较小也易于读取。相比之下,ZXing 的条形码有时难以读取,尤其是在尺寸较小的情况下。
支持的格式: IronBarcode 支持多种条形码格式,包括 UPC-A、二维条形码等。相比之下,ZXing 项目仅支持有限的几种条形码格式。
在性能、易用性、输出质量、支持格式和许可方面,IronBarcode 都优于 ZXing。
您想试用 IronBarcode 并了解它如何增强您的条码扫描和生成能力吗?我们很高兴为您提供 免费试用 供您测试 IronBarcode 的功能和优势。
在试用期间,您可以完全使用 IronBarcode 的所有强大功能,包括支持多种条码格式、高级定制选项以及与现有项目的无缝集成。
要开始试用,只需访问我们的网站并下载 IronBarcode 软件包。然后您就可以 免费试用 了解 IronBarcode 的所有功能,并亲身体验它如何简化您的条码扫描和生成工作流程。