如何一次读取多个条形码
同时读取多个条形码对于包括物流、零售、医疗保健和库存管理在内的各个行业至关重要,因为它能实现高效的数据处理。 使用IronBarcode,您可以轻松实现这一功能,使其成为简化操作和提高生产效率的强大工具。
开始使用 IronBarcode
立即在您的项目中开始使用IronBarcode,并享受免费试用。
如何一次读取多个条形码
读取多个条形码示例
默认情况下,IronBarcode会持续扫描文档以读取多个条形码。 然而,有时即使图像中存在多个条形码,也只返回一个条形码值。 为了解决这个问题,用户可以自定义设置以启用读取多个条形码,如下面的代码片段所示。 请注意,ExpectMultipleBarcode 属性存在于 BarcodeReaderOptions 和 PdfBarcodeReaderOptions 类中,允许用户使用它来读取图像和 PDF 文档中的条形码。
图片样本
:path=/static-assets/barcode/content-code-examples/how-to/read-multiple-barcodes-read-multiple-barcodes.cs
using IronBarCode;
using System;
// Set the option to read multiple barcodes
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
ExpectMultipleBarcodes = true,
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
};
// Read barcode
var results = BarcodeReader.Read("testbc1.png", options);
foreach (var result in results)
{
Console.WriteLine(result.ToString());
}
Imports IronBarCode
Imports System
' Set the option to read multiple barcodes
Private options As New BarcodeReaderOptions() With {
.ExpectMultipleBarcodes = True,
.ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
}
' Read barcode
Private results = BarcodeReader.Read("testbc1.png", options)
For Each result In results
Console.WriteLine(result.ToString())
Next result
通过在代码片段中将ExpectMultipleBarcodes设置为true,IronBarcode会扫描整个文档以查找多个条形码,并将它们存储在BarcodeResults变量中。 使用 foreach 循环,用户可以轻松地访问并将所有条形码值打印到控制台。
读取单个条形码示例
IronBarcode 可以在图像或 PDF 中读取单个或多个条形码。 默认情况下,即使文档中只有一个条形码,引擎也会扫描整个文档。 但是,如果要提高读取单个条形码的性能,您可以将ExpectMultipleBarcodes设置为false。 这会在检测到第一个条形码后阻止引擎扫描整个文件,从而加快条形码的检索速度。 以下代码片段演示了如何做到这一点。
图片样本
:path=/static-assets/barcode/content-code-examples/how-to/read-multiple-barcodes-read-single-barcode.cs
using IronBarCode;
using System;
// Set the option to read single barcode
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
ExpectMultipleBarcodes = false,
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
};
// Read barcode
var results = BarcodeReader.Read("testbc1.png", options);
foreach (var result in results)
{
Console.WriteLine(result.ToString());
}
Imports IronBarCode
Imports System
' Set the option to read single barcode
Private options As New BarcodeReaderOptions() With {
.ExpectMultipleBarcodes = False,
.ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
}
' Read barcode
Private results = BarcodeReader.Read("testbc1.png", options)
For Each result In results
Console.WriteLine(result.ToString())
Next result
在上面的代码片段中,我们使用了与之前相同的包含多个条形码的图像,但这次我们将ExpectMultipleBarcodes设置为false。 因此,只返回第一个条形码值,并且一旦检索到第一个条形码,扫描过程就会停止。
性能比较
将ExpectMultipleBarcodes设置为false可以大大提高图像中单个条码的读取效率。
使用提供的代码片段,这里是在同一台机器上将ExpectMultipleBarcode设置为真和假的性能差异的粗略估计:
ExpectMultipleBarcodes = true | ExpectMultipleBarcodes = false |
---|---|
0.91 秒 | 0.10 秒钟 |