在 C# 中掃描和讀取條形碼

上一篇文章 中,您學習瞭如何以編程方式生成各種類型的條形碼。在本文中,您將學習如何使用 C# 條碼閱讀器 API 讀取條碼。本文還將介紹如何讀取圖像中特定或不同類型的條碼符號。

用於讀取條形碼的 C# API

Aspose.BarCode for .NET 提供了一個強大的條碼掃描器和閱讀器 API,讓您可以在幾行代碼中讀取各種條碼符號。您可以 下載 API 或使用 NuGet 在您的 .NET 應用程序中安裝它。

PM> Install-Package Aspose.BarCode

使用 C# 讀取條形碼

以下是從圖像文件中讀取一維或二維條碼的步驟。

以下代碼示例顯示瞭如何使用 C# 讀取條形碼。

try
{
	// 從目錄中讀取文件
	using (BarCodeReader reader = new BarCodeReader("Scan.jpg"))
	{
		foreach (BarCodeResult result in reader.ReadBarCodes())
		{
			// 讀取符號類型和代碼文本
			Console.WriteLine("Symbology Type: " + result.CodeType);
			Console.WriteLine("CodeText: " + result.CodeText);
		}
	}
}
catch (Exception ex)
{
	Console.WriteLine(ex.Message + "\nThis example will only work if you apply a valid Aspose BarCode License. You can purchase full license or get 30 day temporary license from https://www.aspose.com/purchase/default.aspx.");
}

在 C# 中讀取特定的條碼符號

當您已經知道要讀取的條形碼的符號系統時,可能會出現這種情況。在這種情況下,您可以將條形碼的類型提供給 BarCodeReader 的對象。事先知道類型可以加快條形碼識別過程。以下代碼示例顯示瞭如何指定條形碼的類型。

try
{
    // 創建 BarCodeReader 類的實例 
    using (BarCodeReader reader = new BarCodeReader("Code128.jpg", DecodeType.Code128))
    {
        foreach (BarCodeResult result in reader.ReadBarCodes())
        {
            // 顯示代碼文本和符號類型
            Console.WriteLine("CodeText: " + result.CodeText);
            Console.Write("Symbology Type: " + result.CodeType);
        }
    }
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message + "\nThis example will only work if you apply a valid Aspose BarCode License. You can purchase full license or get 30 day temporary license from http://wwww.aspose.com/purchase/default.aspx.");
}

掃描單個圖像中的多個條碼符號

在特定情況下,您可能將多個條形碼符號體系放置在單個圖像中。對於這種情況,您可以配置 API 以一次性識別所有條形碼。以下是讀取單個圖像中的多個條形碼的步驟。

以下代碼示例展示瞭如何使用 C# 讀取單個圖像中的多個條形碼符號。

try
{                 
    BaseDecodeType[] objArray = new BaseDecodeType[] { DecodeType.Code39Standard, DecodeType.Pdf417 };

    // 初始化 BarCodeReader,在循環中調用 Read() 方法並顯示代碼文本和符號類型
    using (BarCodeReader reader = new BarCodeReader("RecognizingMultipleSymbologies.png", objArray))
    {
        foreach (BarCodeResult result in reader.ReadBarCodes())
        {
            Console.WriteLine("Codetext: " + result.CodeText);
            Console.WriteLine("Symbology type: " + result.CodeType);
        }
    }
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message + "\nThis example will only work if you apply a valid Aspose BarCode License. You can purchase full license or get 30 day temporary license from http://wwww.aspose.com/purchase/default.aspx.");
}

結論

在本文中,您學習瞭如何使用 C# 以編程方式讀取條形碼。此外,您還了解瞭如何讀取單個圖像中的一個或多個條碼符號。您可以使用 文檔 了解有關 C# 條形碼讀取器 API 的更多信息。

也可以看看