BarCodeReader

BarCodeReader class

BarCodeReader 封装了一张可能包含一个或多个条形码的图像,然后它可以执行 ReadBarCodes 操作来检测条形码。

public class BarCodeReader : Component

构造函数

姓名 描述
BarCodeReader() 初始化BarCodeReader具有默认值的类。 需要在调用 ReadBarCodes() 方法之前设置图像 (SetBitmapImage())。
BarCodeReader(Bitmap) 初始化BarCodeReader图像中的类.
BarCodeReader(Stream) 初始化BarCodeReader类.
BarCodeReader(string) 初始化BarCodeReader文件中的类.
BarCodeReader(Bitmap, BaseDecodeType) 初始化BarCodeReader类.
BarCodeReader(Bitmap, params BaseDecodeType[]) 初始化BarCodeReader类.
BarCodeReader(Stream, BaseDecodeType) 初始化BarCodeReader类.
BarCodeReader(Stream, params BaseDecodeType[]) 初始化BarCodeReader类.
BarCodeReader(string, BaseDecodeType) 初始化BarCodeReader类.
BarCodeReader(string, params BaseDecodeType[]) 初始化BarCodeReader类.
BarCodeReader(Bitmap, Rectangle, BaseDecodeType) 初始化BarCodeReader类.
BarCodeReader(Bitmap, Rectangle, params BaseDecodeType[]) 初始化BarCodeReader类.
BarCodeReader(Bitmap, Rectangle[], BaseDecodeType) 初始化BarCodeReader类.
BarCodeReader(Bitmap, Rectangle[], params BaseDecodeType[]) 初始化BarCodeReader类.

特性

姓名 描述
BarcodeSettings { get; } 主要条码解码参数。包含影响识别数据的参数。
FoundBarCodes { get; } 得到认可BarCodeResult数组
FoundCount { get; } 获取识别的条形码计数
QualitySettings { get; set; } QualitySettings 允许手动配置识别质量和速度。 您可以通过嵌入式预设快速设置 QualitySettings:HighPerformance、NormalQuality、 HighQuality、MaxBarCodes 或者您可以手动配置单独的选项。 QualitySettings 的默认值为 NormalQuality。
Timeout { get; set; } 获取或设置识别过程的超时时间,以毫秒为单位。
static ProcessorSettings { get; } 获取使用处理器内核的设置。

方法

姓名 描述
static ImportFromXml(Stream) 从指定的 xml 流导入 BarCode 属性并将它们应用到当前 BarCodeReader 实例。
static ImportFromXml(string) 从指定的 xml 文件导入 BarCode 属性并将它们应用到当前 BarCodeReader 实例。
Abort() 函数请求从其他线程终止当前识别会话。 Abort 是不可阻塞的方法,并在调用后立即返回控制。 识别过程过长时应使用该方法。
ExportToXml(Stream) 将条形码属性导出到指定的 xml 流
ExportToXml(string) 将条形码属性导出到指定的 xml 文件
ReadBarCodes() 读取BarCodeResult 来自图像.
SetBarCodeImage(Bitmap) 设置用于识别的位图图像。 必须在 ReadBarCodes() 方法之前调用。
SetBarCodeImage(Stream) 设置用于识别的图像流。 必须在 ReadBarCodes() 方法之前调用。
SetBarCodeImage(string) 设置用于识别的图像文件。 必须在 ReadBarCodes() 方法之前调用。
SetBarCodeImage(Bitmap, Rectangle) 设置位图图像和识别区域。 必须在 ReadBarCodes() 方法之前调用。
SetBarCodeImage(Bitmap, Rectangle[]) 设置位图图像和识别区域。 必须在 ReadBarCodes() 方法之前调用。
SetBarCodeReadType(BaseDecodeType) 设置识别的解码类型。 必须在 ReadBarCodes() 方法之前调用。
SetBarCodeReadType(params SingleDecodeType[]) SingleDecodeType类型数组进行识别。 必须在 ReadBarCodes() 方法之前调用。

例子

此示例展示了如何检测 Code39 和 Code128 条码。

[C#]
using (BarCodeReader reader = new BarCodeReader(@"c:\test.png", DecodeType.Code39Standard, DecodeType.Code128))
{
    foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        Console.WriteLine("BarCode Type: " + result.CodeTypeName);
        Console.WriteLine("BarCode CodeText: " + result.CodeText);
    }
}
[VB.NET]
Using reader As New BarCodeReader("c:\test.png", DecodeType.Code39Standard, DecodeType.Code128)
    For Each result As BarCodeResult In reader.ReadBarCodes()
        Console.WriteLine("BarCode Type: " + result.CodeTypeName)
        Console.WriteLine("BarCode CodeText: " + result.CodeText)
    Next
End Using

也可以看看