IronBarcodeとOnBarcodeの比較
バーコードは、さまざまな項目に関する情報を、パターンで配置された線とスペースの形で格納する機械可読コードの一種です。 バーコードは、データをエンコードするために使用される一連の平行バーで構成されています。 これらのバーは"バーコード"または"バーコードシンボル"と呼ばれ、バーコードスキャナー(時には"スキャナー"と呼ばれる)によって読み取ることができます。 すべてのバーコードには4つの部分があります:
- スタートキャラクター
- トレランス:幅と高さに許可される変化の数、通常はパーセンテージで表示
- データキャラクター:エンコードされた情報を表すために使用される文字
- 停止文字
バーコードは、小売環境で製品を特定する最も効率的な方法です。 すべての製品には、在庫管理や価格確認のために簡単にスキャンできるユニークなバーコードがあります。 最近では、バーコードは小売環境での製品特定の効率的な方法としてだけではなく、 情報を電子的に保存し、消費者の識別を管理するために使用されるため、私たちの日常生活の重要な側面となっています。
この記事では、2つの人気のあるバーコードライブラリを比較します:
- Spire Barcode
- IronBarcode
これらのライブラリは、バーコードの生成と認識に使用でき、すべて for .NETフレームワークをサポートし、バーコード画像を保存できるようにします。
IronBarcode
IronBarcodeライブラリを使用してC# .NETでバーコードを生成する方法を例を通して見ていきましょう。 バーコードを作成し、スタイルを設定し、その後IronBarcodeを使用してエクスポートするのがどれほど簡単か見ていきましょう。
インストール
Visual Studioを開き、ファイルメニューに移動します。 新しいプロジェクトを選択し、次にConsole Application/Windows Forms/WPF Applicationを選択します。 IronBarcodeは、Webform/MVC/MVC Coreを含むすべての種類のアプリケーションで使用できます。
Program.csファイルが開きます。
IronBarcodeライブラリのインストール
1 IronBarcodeの使用
IronBarcodeライブラリは4つの方法でダウンロードおよびインストールできます:
- Visual Studioの使用
- Visual Studioコマンドラインの使用
- NuGetウェブサイトからの直接ダウンロード
- IronBarcodeウェブサイトからの直接ダウンロード
1.1 Visual Studioの使用
Visual Studioソフトウェアは、ソリューションにパッケージを直接インストールするためのNuGetパッケージマネージャオプションを提供します。 下のスクリーンショットは、NuGetパッケージマネージャを開く方法を示しています。

パッケージマネージャには、NuGetウェブサイトからのパッケージのリストを表示するための検索ボックスがあります。このパッケージマネージャでは、以下のスクリーンショットのように"Barcode"というキーワードを検索する必要があります。

上の画像から、関連する検索結果のリストを得ることができます。 解決策にパッケージをインストールするために必要なオプションを選択する必要があります。
1.2 Visual Studioコマンドラインの使用
Visual Studioツールで、ツール -> NuGetパッケージマネージャ -> パッケージマネージャコンソールに移動します。
コンソールタブに次の行を入力します:
今、パッケージは現在のプロジェクトにダウンロード/インストールされ、使用可能になります。

1.3 NuGetウェブサイトからの直接ダウンロード
第三の方法は、ウェブサイトから直接パッケージをダウンロードすることです。
- リンクに移動します。
- メニューの右側からダウンロードパッケージオプションを選択します。
- ダウンロードしたパッケージをダブルクリックします。 自動的にインストールされます。
- ソリューションを再読み込みして、プロジェクトで使用を開始します。
1.4 IronBarcodeウェブサイトからの直接ダウンロード
最新のパッケージをダウンロードするには、こちらをクリックしてください。ダウンロード後、以下の手順に従ってプロジェクトにパッケージを追加します。
- ソリューションウィンドウからプロジェクトを右クリックします。
- "追加"->"参照"オプションを選択し、ダウンロードした参照の場所を参照します。
- 参照を追加するにはOKをクリックします。
IronBarcodeライブラリをインストールした後、NuGetパッケージを介してまたは.NETバーコードDLLをダウンロードして.NETフレームワークにバーコード機能を追加できます。
ファイルをブラウズするためのバックエンドコードを追加する
次の例では、IronBarcodeを使用して数行のコードで数値またはテキストのコンテンツを含むバーコードを作成する方法を示します。
// Generate a Simple BarCode image and save as PNG using IronBarCode
using IronBarCode;
GeneratedBarcode MyBarCode = IronBarCode.BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.Code128);
MyBarCode.SaveAsPng("MyBarCode.png");
// This line opens the image in your default image viewer
System.Diagnostics.Process.Start("MyBarCode.png");' Generate a Simple BarCode image and save as PNG using IronBarCode
Imports IronBarCode
Private MyBarCode As GeneratedBarcode = IronBarCode.BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.Code128)
MyBarCode.SaveAsPng("MyBarCode.png")
' This line opens the image in your default image viewer
System.Diagnostics.Process.Start("MyBarCode.png")最初のステップでは、バーコードの値を指定し、使用するバーコード形式はIronBarCode.BarcodeWriterEncoding列挙型から選びます。 その後、それを画像として、またはBitmapオブジェクトとして保存できます。 これが必要なコードの全てです! コードの最終行は、バーコードPNGをデフォルトの画像ビューアで開くため、実際に目で見ることができます。
IronBarcodeを使用した高度なバーコード
前の例は効果的でしたが、実際の世界ではもっと多くのことをしたいと思うかもしれません。 次の例では、バーコードに注釈を追加し、フォントを設定し、その下に価値を表示し、マージンを追加し、バーコードの色を変更し、そして保存することを、C#で非常に簡単に行います。 適切であれば、画像の代わりにHTMLまたはPDFにエクスポートすることも選択できます。
using IronBarCode;
using System.Drawing;
// Styling a QR code and adding annotation text
var MyBarCode = IronBarCode.BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.QRCode);
MyBarCode.AddAnnotationTextAboveBarcode("Product URL:");
MyBarCode.AddBarcodeValueTextBelowBarcode();
MyBarCode.SetMargins(100);
MyBarCode.ChangeBarCodeColor(Color.Purple);
// Save as HTML
MyBarCode.SaveAsHtmlFile("MyBarCode.html"); Imports IronBarCode
Imports System.Drawing
' Styling a QR code and adding annotation text
Private MyBarCode = IronBarCode.BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.QRCode)
MyBarCode.AddAnnotationTextAboveBarcode("Product URL:")
MyBarCode.AddBarcodeValueTextBelowBarcode()
MyBarCode.SetMargins(100)
MyBarCode.ChangeBarCodeColor(Color.Purple)
' Save as HTML
MyBarCode.SaveAsHtmlFile("MyBarCode.html")コードは自己説明的であるはずですが、そうでない場合は、GeneratedBarcodeクラスのドキュメントをAPIリファレンス内で読むことをお勧めします。
バーコードの読み取り
.NETでバーコードまたはQRコードを読み取ることは、.NETバーコードリーダー用のIronBarcodeクラスライブラリを使用することで非常に簡単です。 最初の例では、このバーコードを1行で読む方法を示します。

C#でスキャンするバーコード画像
その値、画像、エンコーディングタイプ、バイナリデータ(存在する場合)を抽出し、それをコンソールに出力できます。
using IronBarCode;
using System;
BarcodeResult Result = BarcodeReader.QuicklyReadOneBarcode("GetStarted.png");
if (Result != null && Result.Text == "https://ironsoftware.com/csharp/barcode/")
{
Console.WriteLine("GetStarted was a success. Read Value: " + Result.Text);
}Imports IronBarCode
Imports System
Private Result As BarcodeResult = BarcodeReader.QuicklyReadOneBarcode("GetStarted.png")
If Result IsNot Nothing AndAlso Result.Text = "https://ironsoftware.com/csharp/barcode/" Then
Console.WriteLine("GetStarted was a success. Read Value: " & Result.Text)
End IfQuicklyReadOneBarcodeメソッドに追加できます。 これにより、より努力するようになり、文字通り時間がかかりますが、隠されたQRコード、破損したコード、または傾いた角度のQRコードをより深くスキャンします。
BarcodeResult Result = BarcodeReader.QuicklyReadOneBarcode("TryHarderQR.png", BarcodeEncoding.QRCode | BarcodeEncoding.Code128, true);Dim Result As BarcodeResult = BarcodeReader.QuicklyReadOneBarcode("TryHarderQR.png", BarcodeEncoding.QRCode Or BarcodeEncoding.Code128, True)これで、傾けられたQRコードを読み取ることができるようになりました:

C# で 45 度回転した QR コードをスキャンする
検出したいバーコードのエンコーディングを指定することや、複数のフォーマットを指定することもできます。 これにより、バーコード読み取りのパフォーマンスと精度が大幅に向上します。 パイプ文字(|)または'ビット単位のOR'を使用して、同時に複数のフォーマットを指定します。 同じことが、ビジュアルメソッドやBarcodeReader.ReadASingleBarcodeメソッドコンポーネントモードを使用することで、より高い特定度を持って達成できます。
不完全な画像からバーコードを読む
実際の使用例では、完璧なスクリーンショットではないバーコードを読み取りたい場合があります。 それらは不完全な画像、スキャン、または写真であり、デジタルノイズを含んでいるか、歪んでいる可能性があります。 ほとんどの従来のオープンソース for .NETバーコード生成者およびリーダーライブラリでは、これは不可能です。 しかし、このC#のバーコードリーダーは非常に簡単にします。 TryHarderメソッドを見ていきます。 この単一のパラメータにより、IronBarcodeは歪み補正を試み、不完全なデジタルサンプルからバーコードを読み取ろうとします。
私たちは、携帯電話のカメラから合理的に期待できるデジタルノイズと歪み、視点、および回転を補正するために、特定のバーコード回転補正とバーコード画像補正を設定します。

C# で携帯電話のカメラからバーコードを読み取る
using IronBarCode;
using System;
using System.Drawing;
var PhotoResult = BarcodeReader.ReadASingleBarcode("Photo.png", BarcodeEncoding.Code128, BarcodeReader.BarcodeRotationCorrection.Medium, BarcodeReader.BarcodeImageCorrection.DeepCleanPixels);
string Value = PhotoResult.Value;
Bitmap Img = PhotoResult.BarcodeImage;
BarcodeEncoding BarcodeType = PhotoResult.BarcodeType;
byte[] Binary = PhotoResult.BinaryValue;
Console.WriteLine(PhotoResult.Value);Imports IronBarCode
Imports System
Imports System.Drawing
Private PhotoResult = BarcodeReader.ReadASingleBarcode("Photo.png", BarcodeEncoding.Code128, BarcodeReader.BarcodeRotationCorrection.Medium, BarcodeReader.BarcodeImageCorrection.DeepCleanPixels)
Private Value As String = PhotoResult.Value
Private Img As Bitmap = PhotoResult.BarcodeImage
Private BarcodeType As BarcodeEncoding = PhotoResult.BarcodeType
Private Binary() As Byte = PhotoResult.BinaryValue
Console.WriteLine(PhotoResult.Value)流暢さ
最後の例では、1行のコードでバーコードを作成、スタイル設定、エクスポートできることを示します。 バーコードの開発者は、他 for .NETアプリケーションと簡単に統合され、さまざまなバーコードタイプを認識できることを知っているでしょう。 メソッド呼び出しを連結することによって、最初にバーコードを作成し、次にその余白を設定し、最後に単一の行でビットマップにエクスポートします。これにより、非常に便利になり、コードが読みやすくなります。
Spire BarCode
無料のSpire.Barcode for .NETは、.NET開発者(C#、VB.NET、ASP.NET)向けに特別に設計された無料のプロフェッショナルバーコードAPIで、1Dおよび2Dバーコードを生成および読み取ることができます。 開発者やプログラマーは、Spire.BarCodeを使用して、.NETアプリケーション、ASP.NET WinForms、およびWebサービスにエンタープライズレベルのバーコード形式を迅速かつ簡単に追加できます。 無料のSpire.Barcode for .NETは、バーコード処理を統合する非常に簡単な方法を提供します。 Spire.Barcodeは、Bitmap、JPG、PNG、EMF、TIFF、GIF、およびWMFなどのさまざまな一般的な画像フォーマットをサポートしています。 それはQRコードのサポートも提供します。
インストール
最初に行うべきことは、.NETフレームワークにバーコード機能を追加するためにSpireライブラリをインストールすることです。 これをNuGetパッケージを使用して行うことができます。 IronBarcodeと同様に、プロセスは同じです — 同じ手順に従って"Spire Barcode"と入力し、プロジェクトにパッケージを追加します。

バーコード開発者の作成
ライブラリはバーコード画像を作成するためのメソッドを提供します。 これはオーバーロードされたメソッドです。 ここでは、ライブラリのパフォーマンスをテストするためにコードで使用されるメソッドの定義を一覧にします。
using Spire.Barcode;
using System.Drawing;
namespace QRCode
{
class Program
{
static void Main(string[] args)
{
BarcodeSettings settings = new BarcodeSettings
{
Type = BarCodeType.QRCode,
Data = "Hello world",
Data2D = "Hello 123456789",
QRCodeDataMode = QRCodeDataMode.AlphaNumber,
X = 1.0f,
QRCodeECL = QRCodeECL.H
};
BarCodeGenerator generator = new BarCodeGenerator(settings);
Image image = generator.GenerateImage();
image.Save("QRCode.png");
}
}
}Imports Spire.Barcode
Imports System.Drawing
Namespace QRCode
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim settings As New BarcodeSettings With {
.Type = BarCodeType.QRCode,
.Data = "Hello world",
.Data2D = "Hello 123456789",
.QRCodeDataMode = QRCodeDataMode.AlphaNumber,
.X = 1.0F,
.QRCodeECL = QRCodeECL.H
}
Dim generator As New BarCodeGenerator(settings)
Dim image As Image = generator.GenerateImage()
image.Save("QRCode.png")
End Sub
End Class
End Namespace生成されたQRバーコード画像は次のようになります。

C#でQRコードを作成する
// Generate the barcode based on the barcode control settings
BarCodeGenerator generator = new BarCodeGenerator(this.barCodeControl1);
Image barcode = generator.GenerateImage();
// Save the barcode as an image
barcode.Save("barcode.png");' Generate the barcode based on the barcode control settings
Dim generator As New BarCodeGenerator(Me.barCodeControl1)
Dim barcode As Image = generator.GenerateImage()
' Save the barcode as an image
barcode.Save("barcode.png")このメソッドには2つの重要なクラス、BarCodeGeneratorがあります。 BarCodeControlはバーコードに関する情報を格納します。 BarCodeGeneratorはバーコード画像を生成するクラスです。 そのコンストラクタは1つのパラメータ—BarCodeControlインスタンスを受け取ります。 それにはImageオブジェクトです。
バーコード画像の読み取り
バーコード スキャナーは、バーコード イメージをスキャンするクラスです。 Scanメソッドを呼び出します。 スキャン結果が保存されるstring[]値を返します。 このコードではBarcodeScannerクラスがバーコード画像をスキャンするために使用されます。 VB.NET および C# でエンタープライズ レベルのバーコードを保存および追加できます。
こちらがコードです:
private void btnScan_Click(object sender, EventArgs e)
{
// Scan the barcode
string[] datas = Spire.Barcode.BarcodeScanner.Scan("barcode.png");
// Show the scan result
this.TextB_ScanResult.Text = datas[0];
}Private Sub btnScan_Click(ByVal sender As Object, ByVal e As EventArgs)
' Scan the barcode
Dim datas() As String = Spire.Barcode.BarcodeScanner.Scan("barcode.png")
' Show the scan result
Me.TextB_ScanResult.Text = datas(0)
End SubIronBarcode と Spire.Barcode のライセンスモデルと価格
IronBarcode ライセンスモデルと価格
**30 日間返金保証:**購入後、ライセンスが機能しない場合は、30 日以内に返金を受けることができます。
簡単な統合: IronPDFとプロジェクトおよび環境の統合は簡単で、NuGetパッケージを使用すると 1 行のコードで実現できます。 直接ダウンロードによる統合も可能です。
**永久ライセンス:**各ライセンスは一度購入すれば更新の必要はありません。
**無料サポートと製品アップデート:**すべてのライセンスには、1 年間の無料製品アップデートと製品チームからのサポートが付属しており、いつでも拡張機能を購入できます。
**即時ライセンス:**登録されたライセンス キーは、支払いが受領されるとすぐに送信されます。
すべてのライセンスは永続的であり、開発、ステージング、本番環境に適用されます。
ライトパッケージ:
- 開発者1名
- 1か所
- 1つのプロジェクト
- 永久ライセンス
このパッケージにより、1 人のソフトウェア開発者が 1 つの場所で Iron Software を利用できるようになります。 1つのWebアプリケーション、イントラネットアプリケーション、またはデスクトップソフトウェアプログラムで使用できます。 ライセンスは譲渡不可であり、組織外または代理店/クライアント間の関係外での共有はできません。追加のカバレッジを購入しない限り、配布権はOEM再配布およびSaaSには適用されません。
**価格:**年間$999から始まります。
プロフェッショナルライセンス:
- 10人の開発者
- 10か所
- 10件のプロジェクト
- 永久ライセンス
このパッケージにより、最大 10 人のソフトウェア開発者が単一の場所で Iron Software を利用できるようになります。 必要に応じて、任意の数の Web サイト、イントラネット アプリケーション、またはデスクトップ ソフトウェア アプリケーションで使用できます。 ライセンスは譲渡不可であり、組織外または代理店/クライアント間の関係外での共有はできません。追加のカバレッジを購入しない限り、配布権はOEM再配布およびSaaSには適用されません。
価格設定: $999から年間。
無制限ライセンス:
- 開発者数は無制限
- 場所は無制限
- 無制限のプロジェクト
- 永久ライセンス
これにより、組織内の無制限のソフトウェア開発者が無制限の場所で Iron Software を利用できるようになります。 必要に応じて、任意の数の Web サイト、イントラネット アプリケーション、またはデスクトップ ソフトウェア アプリケーションで使用できます。 ライセンスは譲渡不可であり、組織外または代理店/クライアント間の関係外での共有はできません。追加のカバレッジを購入しない限り、配布権はOEM再配布およびSaaSには適用されません。
価格設定: $2,999から年間。
**ロイヤリティフリーの再配布:**基本ライセンスでカバーされるプロジェクトの数に基づいて、さまざまな商用製品の一部として Iron Software を配布することを許可します (ロイヤリティなし)。 また、基本ライセンスでカバーされているプロジェクトに基づいて、SaaS ソフトウェア サービス内での展開も可能になります。
価格設定: $1,599から年間。
**中断のない製品サポートとアップデート:**製品アップデート、セキュリティ機能のアップグレード、エンジニアリング チーム サポートにアクセスできます。
価格設定: $399から年間。

C#でQRコードを作成する
Spire バーコード ライセンス モデルと価格:
サポートは有料で、サブスクリプションは 1 回限りの支払いです。 一般向けの Web サイトおよびクラウドベースのアプリケーションでは、OEM サブスクリプションのみが機能します。
開発者サブスクリプション:
- 開発者1名
- 1つの展開場所
このパッケージは、1 人の開発者に製品の使用を許可し、組織内の 1 つの地理的な場所に展開できるアプリケーションを無制限に作成することを許可します (社内使用のみ)。 第三者への配布や、一般向け Web サイトや SaaS/PaaS/IaaS プロジェクトへのカスタム アプリケーションの展開は許可されません。
価格設定: 年間$898から始まります。
開発者 OEM サブスクリプション:
- 開発者1名
- 無制限の展開場所
このパッケージにより、1 人の開発者が製品を使用して無制限の数のカスタム アプリケーションを作成することが許可され、これらのアプリケーションは任意の形式で任意の数の地理的場所に配布できるようになります。
**価格:**年間 3,395 ドルから。
サイトエンタープライズサブスクリプション:
- 最大10人の開発者
- 最大10か所の展開場所
これにより、最大 10 人の開発者が無制限のアプリケーションを作成する権限が与えられ、最大 10 か所の地理的な場所に展開できるようになります。 カスタム アプリケーションを一般向け Web サイトや SaaS/PaaS/IaaS プロジェクトに配布することはできません。
**価格:**年間 5,301 ドルから。
サイト OEM サブスクリプション:
- 最大50人の開発者
- 無制限の展開場所
これにより、最大 50 人の開発者が製品を使用して無制限の数のカスタム アプリケーションを作成することが許可され、これらのアプリケーションは任意の形式で任意の数の地理的場所に配布できるようになります。
**価格:**年間 10,187 ドルから。
IronBarcode Liteパッケージには1年間のサポートが付いた1つの開発者パッケージが含まれ、$999程度です。一方、1つの開発者パッケージを含むSpire Developer OEM Subscriptionは$3,395で、1年間のすべてのアップデート、メジャーリリース、技術サポートが含まれます。 リリースと技術サポートがない場合、$1,695です。 10の開発者パッケージと1年間のサポートを含むIronBarcode Professionalパッケージは$999で、10の開発者パッケージを含むSpire Site OEM Subscriptionは1年間のすべてのアップデート、メジャーリリース、技術サポート込みで年間$6,558です。
IronBarcode LiteとProfessional の両方のパッケージには、SaaS サービスまたは OEM と、5 年間のサポート オプションが含まれています。 Liteバージョンには、5 年間のサポートと SaaS および OEM サービスが付いた開発者パッケージが 1 つ含まれており、価格は 2,897 ドルです。一方、Spire には SaaS サービスまたは OEM と 1 年間のサポート オプションがあります。 5年間のサポートとSaaSおよびOEMサービスを含む10開発者パッケージのIronBarcode Professionalバージョンは$3,397です。一方、1年間のサポートとSaaSおよびOEMサービス付き10開発者向けのSpireパッケージは$10,187です。
結論
IronBarcode は、バーコード イメージのエンタープライズ レベルのバーコード形式を生成するために使用されます。 これにより、開発者はバーコード画像を回転したり、バーコード画像の境界線を作成してバーコード画像をさらにフォーマットしたりできるようになります。 IronBarcode は、他のジェネレーターに比べて信頼性の高いバーコード生成を提供し、高品質のバーコード画像を生成します。 IronBarcode を使用すると、必要な出力画像形式を取得でき、1 行のコードでバーコードを作成、スタイル設定、エクスポートできるため、生成されるバーコード画像は高品質です。 バーコード開発者は、他の .NET アプリケーションと簡単に統合でき、さまざまな種類のバーコードを認識できることに気付くでしょう。 ライブラリのコンポーネント モデルは効率的で、開発者はコンポーネント モードごとに異なるスタイルと形式のバーコードを生成できます。 コードはたった1行とシンプルで、IronBarcodeの認識機能は優れています。 API モードにより、他のジェネレータよりも信頼性が高まります。
Spire.Barcode for .NET は、バーコード処理を統合する簡単な方法を提供します。 開発者はたった 1 行のコードで 1D および 2D バーコードを作成し、読み取ることができます。 Spire.Barcode は、ビットマップ、JPG、PNG、EMF、TIFF、GIF、WMF など、さまざまな一般的な画像形式をサポートしています。 したがって、開発者はバーコード画像を簡単に作成でき、最小限のコードでバーコードの生成と作成を統合できます。
IronBarcodeパッケージは、より優れたライセンスとサポートを提供し、Spire.Barcodeよりもコスト効果があります。IronBarcodeは$999から始まり、Spire.Barcodeは$898から始まります。IronBarcodeはより多くの機能を提供し、Spire.Barcodeよりも優れたサポートと返金保証も提供します。 IronBarcode は長期サポートを提供し、API モードの .NET アプリケーションとシームレスに統合されます。 新しいドキュメント (C#、VB.NET) との簡単な統合をサポートし、複数のバーコード形式を生成します。
では、なぜ待つ必要があるのでしょうか? 無料トライアルをご利用ください! ここでライセンスを取得してすぐに始めることができます。

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。
