跳過到頁腳內容
使用IRONBARCODE

在VB.NET中創建條碼掃描器教程

條碼是以可視、電腦可讀的格式表示數據的強大手段。 在本教程中,我們將探討如何使用IronBarcode在 Visual Basic 中生成和閱讀條碼。 IronBarcode 提供了一個穩健且高效的解決方案,無論您是在構建一個庫存管理系統、銷售點應用程序,或是任何涉及 VB.NET 條碼閱讀器處理的項目。

IronBarcode 是一個強大的 C# 庫,可以無縫地與 VB.NET(Visual Basic)專案集成。 它提供了強大的讀寫條碼圖像功能,是開發人員處理 VB.NET 條碼閱讀器組件應用程序的絕佳選擇。 本指南將涵蓋閱讀條碼的基礎知識、配置選項及單次掃描多條碼的處理。

如何在 VB.NET 中讀取條碼?

  1. 安裝 IronBarcode 庫
  2. 使用 Read() 方法從文件中讀取條碼掃描儀圖像。
  3. 使用 ReadPdf() 方法從 PDF 中讀取條碼圖像。

如何在 VB.NET 中生成條碼?

  1. 安裝 IronBarcode 庫。
  2. 使用指定的條碼編碼通過 CreateBarcode() 方法創建條碼。
  3. 將條碼保存為圖像或 PDF。

IronBarcode 介紹

IronBarcode 是一個強大的 C# 條碼庫,簡化了在 .NET 應用程序中使用條碼的操作。 Whether you need to create barcodes or read existing ones, IronBarcode provides an intuitive and efficient solution.

以下是 IronBarcode 的一些關鍵特性和使用案例:

條碼生成: IronBarcode 允許開發人員輕鬆生成各種類型的條碼,包括 1D 條碼如 Code 39、Code 128 和 UPC,以及 2D 條碼如 QR 碼和數據矩陣。

Barcode Reading: The library includes functionality to read barcodes from images, PDFs, or other sources. 這對需要從掃描文檔或相機捕獲中處理條碼值的應用程序來說非常有用。

編碼和解碼: IronBarcode 支持條碼值的編碼和解碼,提供開發人員以程式化操作條碼掃描信息的能力。

支持的條碼類型: IronBarcode 支持範圍廣泛的條碼標準,使其能適應不同的應用需求。

易於使用: 該庫設計為易於使用且易於集成到 .NET 應用程序中。 It provides comprehensive documentation and examples to assist developers in implementing barcode-related functionality.

開始使用

第一步是打開或創建新專案。 該專案可以是任何類型。 相同的代碼適用於所有項目類型。下一步是在我們的專案中安裝 IronBarcode 庫。

安裝 IronBarcode NuGet 套件

您可以使用套件管理器控制台安裝 IronBarcode NuGet 套件。 輸入以下命令:

Install-Package BarCode

在VB.NET教程中創建條碼掃描器:圖1 - VB NET 讀取條碼掃描器

上面的命令將下載並安裝 IronBarcode 庫和所有必要的依賴項。

或者,您也可以通過在解決方案的 NuGet 包管理中瀏覽並下載它。

在VB.NET教程中創建條碼掃描器:圖2 - IronBarcode

讓我們繼續使用 VB.NET 生成條碼圖像。

生成條碼圖像

創建條碼非常簡單。 您可以使用 BarcodeWriter 類來生成多種類型的條碼。 一旦我們有了條碼,我們可以將其保存為圖像。 條碼圖像可以作為圖像訪問或轉換為位圖。我們將創建一個簡單的 Code128 條碼,其值為“0987654ABCD0987654”。 以下是您可以這樣做的方法:

Sub Main(args As String())
    Dim myBarcode = BarcodeWriter.CreateBarcode("0987654ABCD0987654", BarcodeWriterEncoding.Code128)
    ' Save the barcode as an image
    myBarcode.SaveAsImage("myCode128Barcode.jpeg")
End Sub
Sub Main(args As String())
    Dim myBarcode = BarcodeWriter.CreateBarcode("0987654ABCD0987654", BarcodeWriterEncoding.Code128)
    ' Save the barcode as an image
    myBarcode.SaveAsImage("myCode128Barcode.jpeg")
End Sub
VB .NET

上述代碼片段利用 IronBarcode 庫生成一個包含數據"0987654ABCD0987654" 的 Code 128 條碼。 採用了 BarcodeWriter.CreateBarcode 方法,指定了 Code128 編碼。 隨後,創建的條碼使用 SaveAsImage 方法保存為名為 "myCode128Barcode.jpeg" 的 JPEG 圖像文件。 更改 BarcodeWriterEncoding 參數的能力允許靈活選擇不同的條碼標準,根據特定需要提供多種選項,如 EAN13、EAN8、Code Bar、MSI、ITF、PDF417、QR 碼或由 IronBarcode 庫提供的數據矩陣碼。

如果您希望將生成的條碼保存為 JPEG 之外的格式,IronBarcode 庫提供了針對不同文件格式的多種方法。 您可以根據需求使用例如 SaveAsHtmlFileSaveAsPDFSaveAsTiffSaveAsPng 等方法。 例如,如果您希望將條碼保存為 HTML 文件,可以將 SaveAsImage 行替換為 myBarcode.SaveAsHtmlFile("myCode128Barcode.html")。 同樣,對於其他格式,您可以使用相應的方法,提供所需的文件名和擴展名。 這種靈活性使生成的條碼能夠適應不同的文件格式,以適應特定應用需求。

生成的條碼圖像為:

在VB.NET教程中創建條碼掃描器:圖3 - 生成條碼輸出

調整大小和保存

創建條碼後,您可以輕鬆調整其大小。 以下代碼將其最大寬度設置為650像素,最大高度設置為300像素。

Dim myBarcode = BarcodeWriter.CreateBarcode("0987654ABCD0987654", BarcodeWriterEncoding.Code128)
myBarcode.ResizeTo(650, 300)
' Save the resized barcode as an image
myBarcode.SaveAsImage("myCode128Barcode.jpeg")
Dim myBarcode = BarcodeWriter.CreateBarcode("0987654ABCD0987654", BarcodeWriterEncoding.Code128)
myBarcode.ResizeTo(650, 300)
' Save the resized barcode as an image
myBarcode.SaveAsImage("myCode128Barcode.jpeg")
VB .NET

ResizeTo 方法用於調整條碼圖像的大小。 在提供的示例中,myBarcode.ResizeTo(650, 300) 應用於 myBarcode 對象,表示條碼圖像被調整為寬650像素和高300像素。

當您需要調整生成的條碼圖像的尺寸,以滿足特定要求或確保它適合特定的佈局或顯示區域時,該方法非常有用。 調整大小在需要控制條碼的視覺呈現時非常實用,調整大小不會改變編碼數據。

輸出為:

在VB.NET教程中創建條碼掃描器:圖4 - 調整條碼輸出

條碼閱讀器

IronBarcode 使得讀取條碼變得簡單。 您可以從不同來源提取條碼值:

  1. 從一個文件。
  2. 從位圖對象。
  3. 從圖像文件中。
  4. 從 PDF(使用 ReadPdf)。
  5. 從內存流中。

以下代碼將掃描條碼圖像並在控制台中打印其值。

Sub Main(args As String())
    Dim resultFromImage = BarcodeReader.Read("myCode128Barcode.jpeg") ' Scan barcodes
    For i As Integer = 0 To resultFromImage.Count - 1
        Console.WriteLine("Barcode Value: {0}", resultFromImage(i))
    Next i
End Sub
Sub Main(args As String())
    Dim resultFromImage = BarcodeReader.Read("myCode128Barcode.jpeg") ' Scan barcodes
    For i As Integer = 0 To resultFromImage.Count - 1
        Console.WriteLine("Barcode Value: {0}", resultFromImage(i))
    Next i
End Sub
VB .NET

上述代碼利用 IronBarcode 庫從圖像文件 "myCode128Barcode.jpeg" 中讀取條碼數據。 BarcodeReader.Read 方法提取條碼信息,並使用循環迭代結果。 然後使用 Console.WriteLine 將條碼值打印到控制台。

此外,您還可以從各種來源掃描條碼數據,例如位圖、AnyBitmaps、圖像文件和流。 這些選項提供了從不同輸入格式處理條碼數據的靈活性,從 BMP 和 JPG 等常規圖像文件到更通用的表示形式,如 AnyBitmaps 和流。 通過這種方式,我們可以開發我們自己的 .NET 條碼閱讀器,它可以讀取條碼並返回結果。

輸出顯示為:

輸出

在VB.NET教程中創建條碼掃描器:圖5 - 條碼閱讀器輸出

為條碼掃描器添加高級選項

我們可以為我們的條碼掃描器添加更多高級功能,例如使用BarcodeReaderOptions自定義條碼掃描。 設置的參數包括:

  1. 讀取速度(更快、平衡、詳細、極致詳細)。
  2. 是否預期會有超過 1 個條碼。
  3. 特定的條碼類型進行掃描。
  4. 多線程並行處理。
  5. 裁剪區域以聚焦圖像的相關部分。

我們將會讀取包含三個不同條碼圖像的 PDF 文件。

在VB.NET教程中創建條碼掃描器:圖6 - 條碼輸入

以下代碼將為我們的 VB.NET 條碼閱讀器添加高級功能。

Sub Main(args As String())
    Dim resultFromPdf = BarcodeReader.ReadPdf("Barcode.pdf") ' Scan barcodes from a PDF
    Dim myOptionsExample As New BarcodeReaderOptions() With {
        .Speed = ReadingSpeed.Balanced,
        .ExpectMultipleBarcodes = True,
        .ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
        .Multithreaded = True,
        .MaxParallelThreads = 2,
        .CropArea = New System.Drawing.Rectangle(),
        .UseCode39ExtendedMode = True
    }
    For i As Integer = 0 To resultFromPdf.Count - 1
        Console.WriteLine("Barcode Value - {0} = {1}", i, resultFromPdf(i))
    Next i
End Sub
Sub Main(args As String())
    Dim resultFromPdf = BarcodeReader.ReadPdf("Barcode.pdf") ' Scan barcodes from a PDF
    Dim myOptionsExample As New BarcodeReaderOptions() With {
        .Speed = ReadingSpeed.Balanced,
        .ExpectMultipleBarcodes = True,
        .ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
        .Multithreaded = True,
        .MaxParallelThreads = 2,
        .CropArea = New System.Drawing.Rectangle(),
        .UseCode39ExtendedMode = True
    }
    For i As Integer = 0 To resultFromPdf.Count - 1
        Console.WriteLine("Barcode Value - {0} = {1}", i, resultFromPdf(i))
    Next i
End Sub
VB .NET

上述代碼從名為 "Barcode.pdf" 的 PDF 文件中掃描條碼。 BarcodeReader.ReadPdf 方法從 PDF 中提取條碼信息,並且使用循環來迭代結果。 此外,代碼引入了一個設置了多種設定的 BarcodeReaderOptions 對象 myOptionsExample,諸如讀取速度、多條碼期望、接受所有一維條碼類型、啟用最多兩個並行線程的多線程、指定裁剪區域及使用 Code 39 擴展模式。 這些選項展示了 IronBarcode 庫在根據特定要求和環境考量自定義條碼閱讀過程的靈活性。 條碼值將被打印到控制台,提供來自 PDF 文件解碼數據的洞察。

輸出顯示為:

在VB.NET教程中創建條碼掃描器:圖7 - 條碼值輸出

因此,我們可以創建我們自己的 .NET 條碼掃描器 DLL。

結論

最後,本教程演示了如何使用 IronBarcode 庫在 VB.NET 中創建條碼掃描器和生成器。 IronBarcode 提供了一個強大的解決方案,用於處理條碼相關任務,無論是生成購買選項,還是作為將條碼功能集成到 VB.NET 專案中的靈活和易用的工具。

常見問題解答

如何在VB.NET中從圖像讀取條碼?

要在VB.NET中從圖像讀取條碼,您可以使用IronBarcode庫。首先安裝IronBarcode,然後使用Read()方法從圖像文件中提取條碼數據。

在VB.NET中有哪些方法可以從PDF讀取條碼?

您可以在VB.NET中使用IronBarcode的ReadPdf()方法從PDF中讀取條碼。這使您可以直接從PDF文件中提取條碼信息。

在VB.NET中使用IronBarcode生成條碼有哪些優勢?

IronBarcode提供了一個簡單的API來在VB.NET中生成條碼。您可以使用CreateBarcode()方法以多種格式生成條碼,例如JPEG、PDF和HTML,支持多種類型的條碼。

如何在VB.NET中單次掃描中處理多個條碼?

要在VB.NET中單次掃描中處理多個條碼,配置IronBarcode中的BarcodeReaderOptions以啟用ExpectMultipleBarcodes選項,這允許在一次掃描中檢測多個條碼。

在VB.NET中條碼掃描有哪些高級配置選項?

IronBarcode透過BarcodeReaderOptions提供高級配置選項,允許您調整讀取速度、指定預期條碼類型、啟用多執行緒,並定義特定裁剪區域以進行目標掃描。

如何在VB.NET中調整條碼圖像大小?

在VB.NET中,您可以使用IronBarcode的ResizeTo方法調整條碼圖像大小,這樣可以指定條碼圖像的最大寬度和高度。

如何使用VB.NET以不同格式保存條碼?

在VB.NET中使用IronBarcode,可以將條碼保存為各種格式,例如JPEG、PDF、HTML、TIFF和PNG。這種靈活性使其能夠輕鬆集成到不同系統和應用程序中。

在VB.NET中構建條碼掃描器應用程序需要什麼?

要在VB.NET中構建條碼掃描器應用程序,首先安裝IronBarcode庫。然後,使用BarcodeReader方法來掃描並從圖像或PDF中提取數據,並使用BarcodeReaderOptions的選項自訂掃描過程。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担产品测测试,产品开发和研究的责任时,Jordi 为持续的产品改进增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。