IRONSOFTWAREHOME
與其他組件的比較

IronBarcode和Spire Barcode之間的比較

Curtis Chau
Curtis Chau
Updated: 2026年4月21日

條碼無處不在。 條碼掃描技術被用於作者簽署他們的產品,大部分的書籍簽名都是藉由條碼掃描技術來實現的。 然而,對我們的應用程式來說,條碼掃描器可能並不總是合適的。 您可能有條碼的數位圖像和影片,並希望知道它們在英文中代表什麼。 此外,僅限於Windows RT類別庫使用的1-D條碼,資料量有限,條碼掃描器能夠讀取。 2-D條碼,也被稱為QR碼,今天被廣泛使用,可以在其資料矩陣中儲存更多的資料。

ZXing(Zebra Crossing)是一個用Java實現的開源、多格式的1D/2D條碼圖像處理庫,也有其他語言的版本。 它可以在電腦上讀寫多種不同格式的條碼,包括QR碼和UPC碼。

IronBarcode是一個C# .NET軟體庫,允許開發者使用ZXing庫讀寫條碼圖像以進行網頁應用程式測試。 它被設計為簡單易用且易於整合到任何.NET應用程式中,可以用於Windows Forms、WPF和ASP.NET框架。

IronBarcode的庫提供了一個簡單的API用於讀寫條碼圖像,使開發者能輕鬆地將條碼掃描和生成功能新增到他們的軟體中。 IronBarcode支持多種不同條碼格式的讀寫,包括QR碼、UPC碼、UPC-A碼、EAN碼、RSS擴展等,這些都可以用來簽署產品。

A Comparison Between IronBarcode and ZXing .NET, Figure 1: 支持的條碼格式

支持的條碼格式

該庫擁有編寫良好的文件和範例程式碼,展示如何開始使用IronBarcode、如何掃描和解碼條碼、生成和編碼條碼以及如何自定義讀寫過程。

IronBarcode的一個最重要的特點是其支持從PDF文件或圖像文件中識別條碼和QR碼,具有從文件路徑或位圖物件中讀取條碼的能力。

IronBarcode既易於使用,又功能強大且運行迅速。對任何需要在其軟體中新增條碼掃描或生成功能的人而言,這是一個很棒的工具。 而且,由於它基於流行且可靠的ZXing庫構建,您可以確信它是一個可靠且高質量的解決方案。

A Comparison Between IronBarcode and ZXing .NET, Figure 2: 支持的條碼格式

IronBarcode C# 庫及其功能

IronBarcode是如何從ZXing解碼器中建立的

IronBarcode是一個商業的、第三方的.NET庫,用於在C#和VB.NET中解碼條碼,使用開源的ZXing庫作為其底層引擎。該庫提供了一個簡化的、易於使用的API來處理條碼,以及額外的功能,例如能夠從圖像和PDF中讀取條碼,並能夠建立多種格式的條碼。

IronBarcode由一群開發者建立,他們希望為.NET系統構建一個更具使用者友好和更豐富功能的條碼解碼庫。 他們利用了ZXing庫,這是一個成熟的開源庫,支持多種條碼格式,作為他們庫的基礎。 接下來,他們在ZXing程式碼庫周圍構建了自己的定制包裝器,提供了一個更簡單、更一致的API供開發者使用,以及額外的功能,例如支持從圖像和PDF中讀取條碼。

比較IronBarcode和ZXing解碼器

IronBarcode和ZXing都是用於解碼條碼圖像的庫,但它們具有一些重要差異,使IronBarcode成為一個更先進和功能更強大的選擇。

IronBarcode提供了比ZXing更廣泛的支持的Web條碼格式。 IronBarcode可以解碼支持的格式,如QR碼、Code 39、Code 128、EAN-8、EAN-13、UPC-A、UPC-E、Codabar、ITF、資料矩陣、PDF-417、RSS擴展等。 Android使用者並未被排除; IronBarcode可以輕鬆整合到移動應用程式中,以方便Android使用者的條碼掃描。 ZXing支持許多相同的格式,但對某些格式如ITF和Codabar的支持不完整,對某些2D條碼格式如PDF-417不提供支持。

// Example showing how to generate a simple QR Code image and save it as a PNG file
// using IronBarcode in C#.
var qrCode = IronBarCode.QRCodeWriter.CreateQrCode("hello world", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium);
qrCode.SaveAsPng("MyQR.png");
A Comparison Between IronBarcode and ZXing .NET, Figure 3: Generating Barcode

使用IronBarcode生成簡單的QR碼圖像

IronBarcode的另一個優勢是其更具使用者友好的Web API。 該庫設計為簡單易用,易於整合到現有專案中,擁有一個高級的Web API,封裝了許多條碼解碼的複雜細節。

IronBarcode的性能也比ZXing更好。 該庫以C#開發,能夠使用並行處理以比ZXing庫更快地解碼條碼。 此外,IronBarcode能夠讀取ZXing不支持的圖像文件型別中的條碼,例如GIF、TIFF和JPEG-XR。

A Comparison Between IronBarcode and ZXing .NET, Figure 4: Generating Barcode

使用IronBarcode生成簡單的QR碼圖像

總之,IronBarcode是一個比ZXing更先進且更通用的條碼解碼庫。 它提供了更廣泛的支持的條碼格式、更具使用者友好的API和更好的性能,使其成為開發.NET框架的開發者的良好選擇。

How to use ZXing Decoder and IronBarcode in C#

ZXing .NET是ZXing庫的移植版本,這是一個用於處理多種格式的1D/2D條碼的開源庫,最初用Java實現。 它已被移植到C#,並可通過NuGet包管理器獲得。 IronBarcode是一個C# .NET庫,可以讀寫條碼。 它是一個ZXing庫的封裝,也可通過NuGet獲得。

在這個教程中,我們將在線使用ZXing解碼器和IronBarcode來在C# .NET Web應用中解碼條碼。 我們將使用Visual Studio來進行這個教程,但這些概念應適用於任何C#開發環境。

**步驟1:**在Visual Studio中建立一個新的C# .NET專案

透過進入文件 > 新建 > 專案,在Visual Studio中建立一個新的C#專案。 選擇"Windows Forms 應用程式"並為您的專案命名。

**步驟2:**安裝ZXing .NET和IronBarcode NuGet包

在方案總管中,右鍵點擊專案並選擇"管理NuGet包"。搜索ZXing.NET和"IronBarcode"並將它們安裝到專案中。

**步驟3:**向表單新增一個PictureBox和一個按鈕

在表單的設計視圖中,在表單上新增一個ButtonButton將用於啟動解碼過程。

**步驟4:**在表單程式碼的頂部加入以下使用語句:

using IronBarCode;
using ZXing;

**步驟5:**處理按鈕的單擊事件

在設計視圖中雙擊按鈕以建立一個單擊事件處理程式。 在處理程式中,新增以下程式碼以打開一個OpenFileDialog,讓使用者選擇要解碼的圖像:

private void button1_Click(object sender, EventArgs e) {
    OpenFileDialog ofd = new OpenFileDialog();
    ofd.Filter = "Images (*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG|All files (*.*)|*.*";
    ofd.FilterIndex = 1;
    if (ofd.ShowDialog() == DialogResult.OK) {
        pictureBox1.Image = Image.FromFile(ofd.FileName);
        // Decode the barcode from the image here
    }
}

**步驟6:**從圖像中解碼條碼

在以下行之後:

pictureBox1.Image = Image.FromFile(ofd.FileName); 

在按鈕單擊事件處理程式中,新增以下程式碼塊以從圖像中解碼條碼。

// Create a BarcodeReader instance from ZXing.NET and decode the image.
var BarcodeReader = new BarcodeReader();
var Result = BarcodeReader.Decode((Bitmap)pictureBox1.Image);
if (Result != null) {
    MessageBox.Show(Result.Text);
} else {
    MessageBox.Show("No barcode found.");
}

這段程式碼建立了一個ZXing.NET的Decode方法從圖像中解碼條碼。 Result物件,其中包含有關解碼條碼的資訊。

A Comparison Between IronBarcode and ZXing .NET, Figure 5: 建立帶有Logo圖像的QR碼

建立帶有Logo圖像的QR碼

與ZXIng DecoderOnline相比,IronBarcode的優勢

IronBarcode和ZXing都是C#程式語言的條碼和QR碼讀取庫。 這兩個庫各有優勢和劣勢,選擇哪一個取決於您的專案的具體需求。

IronBarcode相對於ZXing的一個主要優勢是其易用性。 IronBarcode擁有一個簡單而直觀的API,使開發者能夠快速開始使用條碼和QR碼。 只需幾行程式碼,您就可以輕鬆讀寫條碼和QR碼。 相比之下,ZXing的API更加複雜,對開發者來說可能具有挑戰性,尤其是如果他們是條碼和QR碼讀取的新手。

IronBarcode的另一個優勢是其高性能。 IronBarcode使用先進的算法來快速讀取和解碼條碼和QR碼,速度比其他庫如ZXing更快。 這使其成為需要快速掃描和解碼條碼和QR碼的專案的理想選擇。

IronBarcode還提供更好的支持,可以從多種型別的圖像格式中讀取和寫入條碼,包括JPEG、PNG、GIF、BMP和TIFF。 相比之下,ZXing對圖像格式的支持更有限,可能無法從某些型別的圖像中讀取或寫入條碼。

using IronBarCode;
using System;
using System.Drawing;

// Example of using IronBarcode to read barcodes with advanced options 
// such as rotation and image correction.
var PhotoResult = BarcodeReader.ReadASingleBarcode("Photo.png", BarcodeEncoding.Code128, BarcodeReader.BarcodeRotationCorrection.Medium, BarcodeReader.BarcodeImageCorrection.DeepCleanPixels);
string Value = PhotoResult.Value;
System.Drawing.Bitmap Img = PhotoResult.BarcodeImage;
BarcodeEncoding BarcodeType = PhotoResult.BarcodeType;
byte[] Binary = PhotoResult.BinaryValue;
Console.WriteLine(PhotoResult.Value);
A Comparison Between IronBarcode and ZXing .NET, Figure 6: Reading a barcode from a phone camera in C#

從手機相機影像中讀取條碼的C#程式碼

IronBarcode提供了更多自定義選項,例如微調條碼讀取、支持多頁文件和各種條碼格式,如DataMatrix、Aztec和PDF-417。如果您需要處理不同型別的條碼或有特定的需求,這可能會很有用。

另一方面,ZXing是一個免費使用的開源庫。 對於預算有限的專案來說,這可能是一個重要的優勢。

總之,IronBarcode和ZXing都是在C#中使用條碼和QR碼的強力庫,但IronBarcode相較於ZXing提供了許多優勢,如易用性、高性能、更好的圖像格式支持以及更多自定義選項。 最好評估兩個庫並選擇最符合您專案需求的那一個。

IronBarcode和ZXing都是用於在C#中處理條碼和QR碼的流行庫。 這兩個庫各有優勢和劣勢,選擇哪一個取決於您的專案的具體需求。 在這篇文章中,我們將詳細探討使用IronBarcode相較於ZXing的優勢,並通過範例來幫助說明主要的差異。

IronBarcode一個主要的優勢是其易用性。 IronBarcode擁有簡單明了和直觀的API,使開發者能夠快速開始工作於條碼和QR碼。 只需幾行程式碼,您就可以輕鬆讀取和寫入條碼和QR碼。 例如,使用IronBarcode從圖像文件讀取條碼,您可以使用以下程式碼:

var reader = new BarcodeReader();
var result = reader.Read("image.jpg");
Console.WriteLine(result.Text);

相比之下,ZXing的API更為複雜,對開發者來說可能是個挑戰,特別是如果他們首次接觸條碼和QR碼讀取。 上方提供的範例使用ZXing達到相同結果的話會需要更多行程式碼。

IronBarcode的另一個優勢是其高性能。 IronBarcode使用先進的算法來快速讀取和解碼條碼和QR碼,速度比其他庫如ZXing更快。 這使其成為需要快速掃描和解碼條碼和QR碼的專案的好選擇。 例如,IronBarcode可以在不到一秒的時間內從圖像中讀取並解碼一個條碼,使其成為大規模掃描和解碼操作的理想選擇。

IronBarcode還提供了更好的支持,能夠從多種圖像格式中讀取和寫入條碼,包括JPEG、PNG、GIF、BMP和TIFF。 這允許開發者輕鬆處理不同圖像格式的條碼,而不必擔心相容性問題。 對比之下,ZXing對圖像格式的支持更為有限,可能無法從某些型別的圖像中讀取或寫入條碼。

using IronBarCode;
using System;
using System.Drawing;

// Example of reading multiple barcodes from a PDF using IronBarcode
PagedBarcodeResult[] PDFResults = BarcodeReader.ReadBarcodesFromPdf("MultipleBarcodes.pdf");

// Work with the results
foreach (var PageResult in PDFResults)
{
    string Value = PageResult.Value;
    int PageNum = PageResult.PageNumber;
    System.Drawing.Bitmap Img = PageResult.BarcodeImage;
    BarcodeEncoding BarcodeType = PageResult.BarcodeType;
    byte[] Binary = PageResult.BinaryValue;
    Console.WriteLine("Page " + PageNum + ": " + PageResult.Value);
}
A Comparison Between IronBarcode and ZXing .NET, Figure 7: 從多幀TIFF圖像中讀取條碼

從多幀TIFF圖像中讀取條碼

IronBarcode也提供了更多的自定義選項,允許開發者微調條碼讀取過程以滿足其特定需求。 例如,您可以使用IronBarcode指定不同的條碼格式,如DataMatrix、Aztec和PDF-417。如果您需要處理不同格式的條碼或具有特定需求,這可能會很有用。 此外,IronBarcode提供了多頁文件支持,使開發者能夠從文件的多個頁面中讀取和提取條碼資訊。

還有一點,IronBarcode擁有更好的錯誤處理,適用於企業級應用程式。

這是一個如何從圖像文件解碼多個條碼的範例:

var barcodeResults = IronBarCode.BarcodeReader.ReadMultiple("multibarcode.png");
foreach (var result in barcodeResults)
{
    Console.WriteLine(result.Text);
}

另一方面,ZXing是一個開源庫,可以免費使用。 對於預算有限的專案來說,這可能是一個重大優勢。 然而,應注意的是,使用IronBarcode的成本可能會被使用更具使用者友好和功能強大的庫所節省的時間和精力所抵消。

A Comparison Between IronBarcode and ZXing .NET, Figure 8: 從多幀TIFF圖像中讀取條碼

使用C#建立註釋和樣式的條碼圖像

總之,IronBarcode和ZXing都是用於在C#中處理條碼和QR碼的強力庫。 然而,IronBarcode相較於ZXing提供了許多優勢,如易用性、高性能、更好的圖像格式支持以及更多的自定義選項。 如果您的專案需要快速且高效的條碼掃描和解碼,或者如果您需要更好的控制條碼讀取過程,IronBarcode是個絕佳選擇。

定價和授權

ZXing在Apache 2.0開源授權下發布,這意味著它可以被自由使用、分發和修改。 在您的軟體專案中使用該庫沒有相關費用。 但是,如果您在商業產品中使用該庫,您必須遵守Apache 2.0授權的條款,包括顯著展示授權通知和免責聲明。

IronBarcode是一個提供免費開發者授權的軟體。 Lite 套件的價格從$999起,包括永久授權、在開發、階段和生產環境中使用該軟體的能力、30天退貨保證和一年軟體支援及升級。 有關IronBarcode定價和授權的更多資訊,請造訪該公司的網站。

A Comparison Between IronBarcode and ZXing .NET, Figure 9: 從多幀TIFF圖像中讀取條碼

IronBarcode授權價格

為什麼選擇IronBarcode

IronBarcode是專為.NET應用程式開發,基於ZXing庫。 IronBarcode也完全用C#編寫,如果您的應用程式也是用C#編寫的,並且您想在您的.NET生態系統中使用它,這是一個優勢。

IronBarcode旨在提供一個更加使用者友好和易於使用的介面來解碼和編碼條碼,而ZXing主要專注於提供基本的算法和庫。

IronBarcode在ZXing庫的基礎上提供了數個附加功能,例如自動糾正常見的掃描錯誤、支持不同型別的條碼讀取和掃描,以及能夠直接從圖像文件或位圖中讀取條碼內容。

總之,如果您的應用程式是用C#編寫的,並且您正在尋找一個易於使用、功能強大的庫來讀寫多種條碼格式,那麼IronBarcode是一個不錯的選擇。 然而,如果您正在尋找一個更通用的、底層的庫,可以在多種語言中使用,那麼ZXing可能是一個更好的選擇。

結論

總體而言,IronBarcode是一個靈活且高效的軟體庫,支持多種條碼格式、符號和字元。 它相容各種操作系統,並提供可靠的授權和支援。

IronBarcode和ZXing都是在.NET框架中用於讀寫條碼的庫。 IronBarcode使用ZXing庫作為依賴項來執行條碼讀寫操作。 IronBarcode提供了一個簡單、易於使用的API來用於C#和VB.NET中的條碼讀寫,而ZXing是一個提供大量靈活性和可定製性的底層庫。 IronBarcode使用ZXing來執行基本的條碼處理和解碼,但為開發者提供了一個更簡單和更方便的接口。

IronBarcode是一個C# / VB.NET的ZXing庫包裝器,這意味著它為ZXing提供的功能提供了一個C# / VB.NET接口。 IronBarcode透過提供一個更方便和更容易的API來讀寫條碼,簡化了ZXing的使用。

與ZXing.NET相比,IronBarcode提供了更多功能和更快的處理時間來識別和生成條碼,並且增加了從各種圖像格式和PDF文件中讀取條碼的能力。

A Comparison Between IronBarcode and ZXing .NET, Figure 10: Iron Suite Prices

Iron Suite授權價格

此外,IronBarcode 免費提供給早期開發階段,並為商業用途提供免費試用。 透過其不同的定價層級,開發者可以選擇最適合其需求和預算的解決方案。 另外,還有一個優惠是用購買2件價格相同的5款Iron Software產品組合。總體而言,IronBarcode相對於ZXing.NET擁有明顯的優勢。

ZXing是其各自所有者的註冊商標。 本網站不隸屬於、未經ZXing認可或贊助。 所有產品名稱、標誌和品牌均為其各自所有者的財產。 比較僅供資訊參考,並反映了撰寫時公開可用的資訊。)}]

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
預訂您的免費即時演示
Booking Badge

全球數百萬工程師信賴

Iron Software的客戶標誌
獲取您的無義務諮詢
完成下方表單或發送電子郵件至sales@ironsoftware.com
您的詳細資訊將始終保密。
全球數百萬工程師信賴
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立