跳過到頁腳內容
與其他組件的比較

IronBarcode和BarcodeLib之間的比較

條碼是一種編碼其所附貼物品資訊的標籤類型。 它開始於一種廣泛使用的黑條和空格的模式,這些通常代表數字。 條碼簡化了通常耗時且困難的數據收集和分析過程。 它們可以被機器快速輕鬆地掃描,這樣可以減少錯誤並降低成本。 它們的一些應用包括庫存管理、品質控制和供應鏈管理。 在這些情況下,它們已被證明是有效的工具,可以區分產品等級或追踪產品在長距離的運輸,直到最終目的地。

有兩種與條碼結合使用的編碼系統。 這些被稱為統一代碼委員會(UPC)和國際標準化組織(ISO)。 UPC代碼的設計是為了提供零售點出售的物品或產品的代表。 UPC是一個12位數的代碼,可以分為6、10或13位數。 還有兩個尾隨校驗位,用於錯誤校正。 當掃描時,前五位數代表它生產的公司及該公司產品線內的產品。最後一個數字識別機器可讀條碼掃描的特定產品或物品。 ISO代碼最初由國際貿易公司開發,主要是作為物品編號的代表,而不是物品本身。

本文中,我們將比較兩個流行的條碼程式庫:

  • BarcodeLib
  • IronBarcode

這兩個程式庫都可以用於條碼的生成和識別。 它們支持所有.NET框架,允許您保存條碼圖像。

BarcodeLib概覽

Barcodelib for .NET是一個.NET條碼生成器套件,旨在用於ASP.NET、.NET類、控制台應用程式、Windows Forms應用程式、Microsoft Reporting Service、Crystal Reports for .NET和Client RDlC報告中的條碼生成。

  • 易於使用 — 使用ASP.NET Web Form 和 .NET Windows Form條碼生成器控制DLL拖放
  • 易於再分發 — 所有條碼和功能都集成到個別的DLL程序集內。 無需啟用鍵,無需註冊碼
  • 完全管理的C#代碼 — 所有.NET條碼生成元件都使用Visual C#.NET管理代碼編譯。
  • 與ASP.NET條碼應用程式相容 — 您可以輕鬆將條碼圖像嵌入到您的aspx或html頁面中的 related to BarcodeLib概覽標籤中。
  • 與最新的條碼標準兼容 — 所有線性和2D條碼生成參數符合相應的條碼規範。
  • .NET條碼元件享有盛譽 — 自2003年發行以來,已有超過1000名客戶使用並讚賞。
  • 免版稅開發者授權 — 您可以將.NET套件元件再分發到無限數量的電腦和伺服器。
  • 支持條碼校驗和 — 您可以控制一些線性條碼中的校驗和數字,添加或移除。
  • 自定義條碼文字 — 您可以在線性條碼中顯示或隱藏條碼條以下或以上的可讀文本。
  • 調整圖像解析度和大小 — 您可以通過圖像解析度、圖像寬度和圖像高度控制條碼圖像大小。
  • 條碼模塊大小設置 — 自由設置生成的條碼圖像大小,通過設置條碼模塊尺寸。
  • 條碼圖像方向 — 您可以以0、90、180和270度顯示條碼圖像。
  • 條碼編碼和保存 — 您可以將條碼編碼為GIF、JPEG、PNG和Bitmap圖像格式,或輸出條碼至Graphics、Bitmap、HttpResponse和Stream .NET對象。

IronBarcode

IronBarcode for .NET允許程式設計師從.NET應用和網站內讀寫條碼和QR碼。 IronBarcode只需一行代碼即可讀取或寫入條碼。 .NET條碼程式庫可以讀取和寫入大多數條碼和QR標準。 Code 39/93/128、UPC A/E、EAN 8/13、ITF、RSS 14 / Expanded、Databar、Codabar、Aztec、Data Matrix、MaxiCode、PDF417、MSI、Plessey、USPS和QR是一些最常見的類型。在條碼結果數據中同時包含類型、文本、二進制數據、頁面和圖片文件。 條碼API的功能如下:

  • IronBarcode讀取和寫入大多數條碼類型和QR標準,包括UPC A/E、EAN 8/13、Code 39/93/128、ITF、MSI、RSS 14/Expanded、Databar、Codabar、QR、Styled QR、Data Matrix、MaxiCode、PDF417、Plessey和Aztec。 由結果提供的條碼數據、類型、頁面、文本和條碼圖片非常適合存檔或索引系統。
  • 圖像預處理提升了閱讀速度和準確性— IronBarcode自動預處理條碼圖片以提高閱讀速度和準確性。 它可以閱讀掃描或直播影片框架,校正旋轉、噪聲、失真和偏斜。 批處理伺服器應用程式可以利用多個核心和線程,自動在單頁和多頁文檔中找到一個或多個條碼。 無需使用複雜的API,您可以搜尋某些條碼類型或文件位置。
  • 設計用於.NET項目,僅需幾行代碼即可快速啟動。 為.NET Framework構建為單個DLL,無需依賴; 支持32位和64位,可以用於任何.NET和dot net core語言。 支援Web、雲端、桌面和控制檯應用程序中的移動和桌面設備。 它還用於在.NET應用程式中創建旋轉條碼及常見使用場景,並為所有這些以及其他常見使用場景提供.NET支持。
  • 對多種文檔格式創建條碼和QR碼,保存並以多種文件和流格式打印到文件或流中,包括PDF、JPG、TIFF、GIF、BMP、PNG 和 HTML。 可以更改顏色、質量、旋轉、大小和文本。

2.0 創建一個新專案

打開Visual Studio,然後前往檔案菜單。 選擇新專案,然後選擇控制台應用程式/Windows Forms/WPF應用程式。 IronBarcode可用於所有類型的應用程式。 您也可以使用Webform/MVC/MVC Core等應用程式。

Leadtools Barcode Alternative 1 related to 2.0 創建一個新專案

在適當的文本框中輸入項目名稱和選擇文件路徑。 然後點擊創建按鈕,選擇所需的.NET框架。 現在將生成選定應用程式結構的專案,如果您選擇了控制台應用程式,將打開program.cs文件,在其中您可以輸入代碼並構建/運行應用程式。

Leadtools Barcode Alternative 2 related to 2.0 創建一個新專案

3.0 安裝IronBarcode程式庫

3.1 使用IronBarcode

可以通過四種方式下載和安裝IronBarcode程式庫:

這些是:

  • 使用Visual Studio
  • 使用Visual Studio命令行。
  • 從NuGet網站直接下載。
  • 從IronBarcode網站直接下載。

3.1.1 使用Visual Studio

Visual Studio軟體提供NuGet包管理器選項,可直接將包安裝到解決方案。 以下截圖展示了如何打開NuGet包管理器。

Spire Barcode Generator Alternative 1 related to 3.1.1 使用Visual Studio

它提供搜尋框以顯示NuGet網站中包的列表。在包管理器中,我們需要搜尋關鍵字"Barcode",如下圖所示:

Spire Barcode Generator Alternative 2 related to 3.1.1 使用Visual Studio

從上述圖片中,我們將獲得相關搜索結果列表。 我們需要選擇所需的選項以將包安裝到解決方案中。

3.1.2 使用Visual Studio命令行

在Visual Studio中,前往工具 -> NuGet包管理器 -> 包管理器控制台

在控制台標籤中輸入以下內容:

Install-Package BarCode

現在包將下載/安裝到當前專案並做好使用準備。

Spire Barcode Generator Alternative 3 related to 3.1.2 使用Visual Studio命令行

3.1.3 從NuGet網站直接下載

第三種方法是從網站直接下載包。

  • Navigate to the Link.
  • 從右側菜單中選擇下載包選項。
  • 雙擊下載的包以自動安裝。
  • 現在重新加載解決方案並開始在專案中使用。

3.1.4 從IronBarcode網站直接下載

Click the link to download the latest package from the website. After the download, follow the steps below to add the package to the project:

  • 右鍵單擊解決方案窗口中的項目。
  • 選擇選項"引用",瀏覽下載引用的位置。
  • 點擊確認以添加引用。

首先我們需要安裝IronBarcode程式庫,將條碼功能添加到.NET框架中。 We can do this using our NuGet package or by downloading the .NET Barcode DLL.

Install-Package BarCode

3.2 使用BarcodeLib

可以通過四種不同的方式下載和安裝BarcodeLib程式庫。

這些是:

  • 使用Visual Studio
  • 使用Visual Studio命令行。
  • 從NuGet網站直接下載。
  • 從IronBarcode網站直接下載。

3.2.1 使用Visual Studio

這種方法與上述IronBarcode所使用的類似。 唯一需要更改的是搜尋條件,如下圖所示。

Barcodelib Alternative 1 related to 3.2.1 使用Visual Studio

選擇第一個選項,然後將下載BarcodeLib條碼程式庫。

3.2.2 使用Visual Studio命令行

在Visual Studio中,前往工具 -> NuGet包管理器 -> 包管理器控制台

在包管理器控制台標籤中輸入以下內容:

Install-Package BarcodeLib

包現在將在當前項目中下載/安裝並準備使用。

3.2.3 從Barcodelib網站直接下載

第三種方法是從網站直接下載包。

  • Just click here to be redirected to the NuGet website where you can download the package.

4.0 條碼生成

可以使用IronBarcode和BarcodeLib輕鬆生成條碼。 讓我們通過一個範例來看看。

4.1 使用IronBarcode

IronBarcode可用於創建條碼標籤,然後將其保存為不同類型的圖像格式。 此外,我們可以傳遞我們需要生成的條碼類型。 以下程式碼片段用于條碼生成。

// Generate a barcode with IronBarcode and save it as an image
var MyBarCode = BarcodeWriter.CreateBarcode("123456", BarcodeEncoding.Code128);

// Add annotations below the barcode
MyBarCode.AddAnnotationTextBelowBarcode("123456");

// Save the barcode image in a specified format
MyBarCode.SaveAsImage("MyBarCode.jpeg");
// Generate a barcode with IronBarcode and save it as an image
var MyBarCode = BarcodeWriter.CreateBarcode("123456", BarcodeEncoding.Code128);

// Add annotations below the barcode
MyBarCode.AddAnnotationTextBelowBarcode("123456");

// Save the barcode image in a specified format
MyBarCode.SaveAsImage("MyBarCode.jpeg");
$vbLabelText   $csharpLabel

BarcodeWriter.CreateBarcode是IronBarcode命名空間中的一個靜態類方法。 它初始化一個新的條碼對象,指定內容和編碼類型。 我們可以進一步指定高度和寬度選項。 AddAnnotationTextBelowBarcode方法允許在條碼下添加文本。

上述程式碼片段也顯示將條碼保存為JPEG格式。 IronBarcode提供替代選擇,例如將條碼輸出為HTML和其他圖像格式,以提高靈活性。

// Create a QR code with a logo
var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("Hello World", "logo.png", 500);

// Change the barcode color
QRWithLogo.ChangeBarCodeColor(System.Drawing.Color.DarkGreen);

// Save the QR code with the logo as a JPEG
QRWithLogo.SaveAsJpeg("Logoqr.jpeg");
// Create a QR code with a logo
var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("Hello World", "logo.png", 500);

// Change the barcode color
QRWithLogo.ChangeBarCodeColor(System.Drawing.Color.DarkGreen);

// Save the QR code with the logo as a JPEG
QRWithLogo.SaveAsJpeg("Logoqr.jpeg");
$vbLabelText   $csharpLabel

該程式碼片段顯示如何生成具有嵌入徽標的QR碼並使用ChangeBarCodeColor等方法自定義外觀。

4.2 使用BarcodeLib

BarcodeLib提供不同條碼類型的功能。以下程式碼片段演示了其使用:

// Create a barcode using BarcodeLib
BarcodeLib.Barcode.Linear barcode = new BarcodeLib.Barcode.Linear();

// Set barcode parameters
barcode.Type = BarcodeType.CODE39;
barcode.Data = "CODE39";
barcode.UOM = UnitOfMeasure.PIXEL;
barcode.BarWidth = 1;
barcode.BarHeight = 80;
barcode.LeftMargin = 5;
barcode.RightMargin = 5;
barcode.TopMargin = 5;
barcode.BottomMargin = 5;
barcode.ImageFormat = System.Drawing.Imaging.ImageFormat.Png;

// Save barcode image
barcode.drawBarcode("C://barcode.png");

// Additional ways to output the barcode
byte[] barcodeInBytes = barcode.drawBarcodeAsBytes();
Graphics graphics = ...;
barcode.drawBarcode(graphics);
Bitmap barcodeInBitmap = barcode.drawBarcode();
HttpResponse response = ...;
barcode.drawBarcode(response);
Stream stream = ...;
barcode.drawBarcode(stream);
// Create a barcode using BarcodeLib
BarcodeLib.Barcode.Linear barcode = new BarcodeLib.Barcode.Linear();

// Set barcode parameters
barcode.Type = BarcodeType.CODE39;
barcode.Data = "CODE39";
barcode.UOM = UnitOfMeasure.PIXEL;
barcode.BarWidth = 1;
barcode.BarHeight = 80;
barcode.LeftMargin = 5;
barcode.RightMargin = 5;
barcode.TopMargin = 5;
barcode.BottomMargin = 5;
barcode.ImageFormat = System.Drawing.Imaging.ImageFormat.Png;

// Save barcode image
barcode.drawBarcode("C://barcode.png");

// Additional ways to output the barcode
byte[] barcodeInBytes = barcode.drawBarcodeAsBytes();
Graphics graphics = ...;
barcode.drawBarcode(graphics);
Bitmap barcodeInBitmap = barcode.drawBarcode();
HttpResponse response = ...;
barcode.drawBarcode(response);
Stream stream = ...;
barcode.drawBarcode(stream);
$vbLabelText   $csharpLabel

Linear條碼對象。 除圖像文件外,條碼還可以導出為多種格式,如流和HTTP回應。

5.0 識別條碼

IronBarcode和BarcodeLib允許我們從不同的圖像格式和類型中識別條碼。這是如何做到的。

5.1 使用IronBarcode

IronBarcode可從字符串、流或圖像中讀取條碼。 這是如何與圖像文件一起使用的方法:

// Read a barcode from an image using IronBarcode
BarcodeResult QRResult = BarcodeReader.QuicklyReadOneBarcode("MyBarCode.jpg");

if (QRResult != null)
{
    // Output barcode value and type
    Console.WriteLine(QRResult.Value);
    Console.WriteLine(QRResult.BarcodeType);
}
// Read a barcode from an image using IronBarcode
BarcodeResult QRResult = BarcodeReader.QuicklyReadOneBarcode("MyBarCode.jpg");

if (QRResult != null)
{
    // Output barcode value and type
    Console.WriteLine(QRResult.Value);
    Console.WriteLine(QRResult.BarcodeType);
}
$vbLabelText   $csharpLabel

BarcodeResult對象,提供值和類型等屬性(文本、二進制值)。

5.2 使用BarcodeLib

BarcodeLib中的條碼識別可以使用文件、流或位圖:

// Configure settings for optimized recognition
OptimizeSetting setting = new OptimizeSetting();  
setting.setMaxOneBarcodePerPage(true);
ScanArea top20 = new ScanArea(new PointF(0.0F, 0.0F), new PointF(100.0F, 20.0F));
ScanArea bottom20 = new ScanArea(new PointF(0.0F, 80.0F), new PointF(100.0F, 100.0F));    
List<ScanArea> areas = new List<ScanArea>();
areas.Add(top20);
areas.Add(bottom20);    
setting.setAreas(areas);

// Read barcode from a file using BarcodeLib
string[] results = BarcodeReader.read("c:/code39-barcode.gif", BarcodeReader.CODE39, setting);
// Configure settings for optimized recognition
OptimizeSetting setting = new OptimizeSetting();  
setting.setMaxOneBarcodePerPage(true);
ScanArea top20 = new ScanArea(new PointF(0.0F, 0.0F), new PointF(100.0F, 20.0F));
ScanArea bottom20 = new ScanArea(new PointF(0.0F, 80.0F), new PointF(100.0F, 100.0F));    
List<ScanArea> areas = new List<ScanArea>();
areas.Add(top20);
areas.Add(bottom20);    
setting.setAreas(areas);

// Read barcode from a file using BarcodeLib
string[] results = BarcodeReader.read("c:/code39-barcode.gif", BarcodeReader.CODE39, setting);
$vbLabelText   $csharpLabel

BarcodeReader使用文件路徑讀取條碼,將圖像轉換為可讀格式。 在BarcodeReader.read內支持多種類型和輸出選項,允許同時處理多種條碼格式。

6.0 IronBarcode 和 BarcodeLib 授權模式和價格

IronBarcode 授權模式和價格

  • 30天退款保證:購買授權後,如果授權無法正常工作,您將有30天的退款保證。
  • 簡易整合:IronBarcode與您的專案和環境的整合非常簡單,只需寫一行代碼即可達成,可從NuGet包中添加,或者我們可以從網上下載並以這種方式整合到環境中。
  • 永久授權:每個授權一次性購買,不需續約。
  • 免費支援和產品更新:每個授權均包括一年免費的產品更新和來自產品團隊的支援。 可以在任何時候購買擴展。 可以查看擴展。
  • 即時授權:收到付款後立即發送註冊授權金鑰。

所有授權均為永久性,適用於開發、登陸和生產環境。

Lite 授權

  • 1 名開發者
  • 1 個地點
  • 1 個專案
  • 永久授權

此授權允許組織中的單個軟體開發者在一個地方使用Iron Software。 Iron Software可以用於單個Web應用程式、內部網應用程式或桌面軟體程式。 授權不可轉讓,不能在組織或代理/客戶關係外共享。這種類型的授權,與所有其它授權類型一樣,明確排除未經協議明確授予的所有權利,除非購買了額外的覆蓋範圍,否則不包括OEM再分發和使用Iron Software作為SaaS。

定價:每年起價報價。

專業授權:

  • 10 名開發者
  • 10 個地點
  • 10 個專案
  • 永久授權

允許組織中預定數量的軟體開發者在單個地點使用Iron Software,最多可達10個。 Iron Software可以用於無限數量的網站、內聯應用程式或桌面軟體應用程式。授權不可轉讓,不得在組織或代理商/客戶關係之外共享。這種類型的授權,與所有其它授權類型一樣,明確排除未經協議明確授予的所有權利,包括OEM再分發和在未購買額外覆蓋的情況下將Iron Software用作SaaS。 此授權可以整合到最多10個單个專案中。

定價:每年起價$2,999。

無限授權

  • 無限開發者
  • 無限地點
  • 無限專案
  • 永久授權

這允許組織中的無限數量的软件开发者在無限數量的地點使用Iron Software。 Iron Software可以用於無限數量的網站、內聯應用程式或桌面軟體應用程式。授權不可轉讓,不得在組織或代理商/客戶關係之外共享。這種類型的授權,與所有其它授權類型一樣,明確排除未經協議明確授予的所有權利,包括OEM再分發和在未購買額外覆蓋的情況下將Iron Software用作SaaS。

定價:每年起價報價。

免版稅再分發:這使您可以根據基礎授權所涵蓋的專案數量,將Iron Software作為不同包裝的商業產品的組成部分(無需支付版稅)進行分發。 它允許根據基礎授權所涵蓋的專案數量在SaaS軟體服務中部署Iron Software。

定價:每年起價$3,395。

BarcodeLib 授權模式及價格

  • 一旦您的付款被批准,您將立即收到帶有產品的電子郵件。
  • 所有授權均包含六個月的免費高級支援以及一年的免費更新。
  • 如果您有任何請求或問題,請發送電子郵件至支援。

單一開發者授權:單一開發者授權允許一名開發者免版稅地分發不限用戶授權和安裝軟體到無限伺服器,可以放置在多個位置。

定價:起價$1,099(一次性購買,附有選擇性年度維護)。

5-開發者授權:這允許五名開發者免版稅地分發不限用戶授權和安裝軟體到無限伺服器,可以放置在多個位置。

定價:起價$1,899(一次性購買,附有選擇性年度維護)。

無限開發者授權:這允許無限開發者免版稅地分發、無限用戶授權和安裝軟體到無限伺服器,可以放置在多個位置。

定價:起價$2,799(一次性購買,附有選擇性年度維護)。

7.0 結論

IronBarcode是幫助生成和識別條碼最強大的程式庫之一。 在條碼生成和識別方面,它也是速度最快的程式庫之一。 此程式庫受到各種操作系統的支持。 它支援多種條碼格式,且易於創建。 我們可以更改圖像格式為JPEG及其他,還可更改顏色、線條高度、寬度和條碼文字。

BarcodeLib.Barcode也是一個強大的程式庫,可幫助我們生成和識別具有不同圖像格式的條碼。 我們可以使用多種圖像格式來讀取和創建條碼。 BarcodeLib也提供選項更改條碼外觀,例如高度、寬度、條碼文字等等。

IronBarcode包提供比BarcodeLib更好的授權和支持。 相比之下,BarcodeLib更昂貴,起價為$1,099(一次性購買),而IronBarcode顯然更便宜,起價$liteLicense。 IronBarcode不僅更具成本效益,還提供比BarcodeLib更多的功能。 此外,IronBarcode比BarcodeLib更快。 IronBarcode還具有各種屬性,允許我們不僅從不同的圖像格式中讀取條碼,還可以從PDF文件中讀取條碼。 它還允許我們在條碼或QR碼中添加圖像,這是在其他任何程式庫中不可用的功能。

那麼,您還在等什麼呢? 免費試用對所有人開放。 You can obtain the License here and begin straightaway.

請注意BarcodeLib是其各自所有者的註冊商標。 此網站與BarcodeLib無關,且未獲其認可或贊助。 所有產品名稱、標誌和品牌均為其各自所有者的財產。 比較僅供信息參考,反映了撰寫時的公開信息。)]

常見問題解答

我如何在 .NET 應用程式中生成條碼?

您可以使用 IronBarcode 在 .NET 應用程式中生成條碼,這提供了一種簡單的方法,只需一行代碼即可創建條碼。它支持各種格式,如 Code 39、Code 128、QR 和 Data Matrix。

在庫存管理中使用條碼的好處是什麼?

庫存管理中的條碼簡化了數據收集,減少了錯誤,提高了效率。像 IronBarcode 這樣的庫可以方便地生成和讀取條碼,幫助有效的庫存追蹤和管理。

IronBarcode 支持哪些條碼格式?

IronBarcode 支持包括 Code 39、Code 93、Code 128、QR 和 Data Matrix 在內的多種條碼格式,允許在各種應用中靈活生成條碼。

我可以在 .NET 應用程式中將圖像添加到 QR 碼中嗎?

是的,IronBarcode 允許您向 QR 碼中添加圖像,增強您在 .NET 應用中創建的代碼的視覺吸引力和功能性。

如何在 .NET 中從 PDF 文件中讀取條碼?

通過使用 IronBarcode,您可以直接從 PDF 文件以及各種圖像格式中讀取條碼,簡化了 .NET 應用中的條碼識別過程。

IronBarcode 提供哪些許可選項?

IronBarcode 提供多種許可選項,包括為個人開發者提供的 Lite License、小型團隊的 Professional License 和大型團隊的 Unlimited License,所有選項均提供 30 天退款保證。

為什麼 IronBarcode 被認為是 BarcodeLib 的經濟有效的替代方案?

IronBarcode 被認為是 BarcodeLib 的經濟有效的替代方案,因為其價格較低,功能集廣泛,包括優越的圖像處理能力,支持多種條碼格式及易於集成。

使用 IronBarcode 進行條碼操作的優勢是什麼?

IronBarcode 提供了優勢,如優越的圖像預處理以提高讀取速度和準確性,支持多種文件類型,以及能夠用最少的代碼生成和讀取條碼。

在 .NET 中生成條碼時,可以自定義條碼嗎?

是的,當使用 IronBarcode 時,條碼可以通過支援校驗碼和可自定文本顯示等功能來自定義,為 .NET 應用提供量身定制的條碼解決方案。

IronBarcode 如何提高條碼的讀取準確性?

IronBarcode 通過先進的圖像預處理技術增強條碼的讀取準確性,這些技術能自動糾正條碼圖像中的旋轉、噪音、畸變和傾斜問題。

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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me