IronBarcodeを使用して C# でバーコードを生成する方法
IronBarcodeは、わずか数行のコードでC#からバーコードを生成および読み取ることができる.NETバーコードライブラリです。 Code 128、QRコード、EAN-13、PDF-417、データマトリックスなど、数十種類のバーコードを作成し、PNG、JPEG、TIFF、BMP、PDF、またはHTML形式でエクスポートできます。 このガイドでは、インストール、コア生成パターン、スタイル設定、エクスポート形式、およびベストプラクティスについて説明し、あらゆる.NETアプリケーションに信頼性の高いバーコード出力機能を追加できるようにします。
NuGetパッケージマネージャーを使用してバーコード生成ライブラリをインストールするにはどうすればよいですか?
Visual Studioを開き、パッケージ・マネージャ・コンソールでこのコマンドを使用してNuGetパッケージをインストールします:
Install-Package BarCode
IronBarcodeを使用したバーコードジェネレータC#ソースコード:イメージ1 - インストール
NuGetパッケージは、.NET 10、 .NET 8、 .NET 6、 .NET Core、 .NET Standard、および.NET Frameworkをサポートしており、Windows アプリケーションおよびクロスプラットフォームの.NETアプリケーションとの互換性があります。 IronBarcodeはDockerコンテナ、Azure、Linuxサーバーへのデプロイをサポートしています。 詳細情報や参考資料については、 IronBarcodeのドキュメントページおよびIron SoftwareのGitHubプロジェクトをご覧ください。
インストール後、プロジェクトで IronBarCode 名前空間が使用できるようになります。 このライブラリは、Windows 上では追加のランタイム依存関係を必要としません。Linux 上では、 IronBarcode Linux 導入ガイドに記載されているように、いくつかのシステムライブラリをインストールする必要がある場合があります。
C#でシンプルなバーコード画像ファイルを生成するにはどうすればよいですか?
わずか数行のコードでバーコード画像を作成します。 次の例は、PNG画像ファイルを保存するBarCode生成です:
using IronBarCode;
// Generate a simple barcode and encode the string data
var barcode = BarcodeWriter.CreateBarcode("SKU-78432-X", BarcodeWriterEncoding.Code128);
// Save the barcode as a PNG image file
barcode.SaveAsPng("product-barcode.png");
using IronBarCode;
// Generate a simple barcode and encode the string data
var barcode = BarcodeWriter.CreateBarcode("SKU-78432-X", BarcodeWriterEncoding.Code128);
// Save the barcode as a PNG image file
barcode.SaveAsPng("product-barcode.png");
Imports IronBarCode
' Generate a simple barcode and encode the string data
Dim barcode = BarcodeWriter.CreateBarcode("SKU-78432-X", BarcodeWriterEncoding.Code128)
' Save the barcode as a PNG image file
barcode.SaveAsPng("product-barcode.png")
CODE-42376--@@メソッドは、エンコードする文字列と、BarcodeWriterEncodingからのバーコード形式を受け入れます。 返されたGeneratedBarcode@リファレンスは、PNG、JPEG、BMP、TIFF、PDF、またはHTMLに保存するためのスタイリングメソッドとエクスポートオプションを提供します。
出力
Barcode Generator C# Source Code Using IronBarcode:イメージ2 - バーコード出力。
Code128は、物流および在庫管理システムにおいて最も広く使われているバーコードです。 大文字、小文字、数字、特殊文字をコンパクトな線形形式でエンコードします。 このバーコードタイプは、世界中の出荷施設や小売環境で適切なスキャンを保証します。CODE-42379--@@メソッドを使用すると、IronBarcodeは自動的にオンスクリーンディスプレイや標準プリンターに適したデフォルトの解像度を設定します。
Webエンドポイントから直接バーコード画像を提供する必要があるアプリケーションでは、ディスクに保存する代わりにToStream()を使用できます。 ストリームは、ASP.NET CoreのHttpResponseに直接書き込むか、コントローラのアクションからFileStreamResultとして返すことができます。
QRコードやその他の2次元バーコードはどのように作成するのですか?
IronBarcodeはQRコードやデータマトリックスなどの2次元バーコードを含む主要なバーコードフォーマットをサポートしています。 同様の構文でQRコードを生成します:
using IronBarCode;
// Create a QR code and encode URL data
var qrCode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com/csharp/barcode/",
BarcodeWriterEncoding.QRCode
);
qrCode.SaveAsPng("website-qr.png");
using IronBarCode;
// Create a QR code and encode URL data
var qrCode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com/csharp/barcode/",
BarcodeWriterEncoding.QRCode
);
qrCode.SaveAsPng("website-qr.png");
Imports IronBarCode
' Create a QR code and encode URL data
Dim qrCode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com/csharp/barcode/",
BarcodeWriterEncoding.QRCode
)
qrCode.SaveAsPng("website-qr.png")
QRコードのバーコードタイプは、URLやより大きなデータペイロードの保存に優れています。 このライブラリは、エラー訂正を自動的に処理し、バーコードが部分的に破損していてもスキャン可能であることを保証します。 IronBarcodeはデフォルトではエラー訂正レベルM(中)を使用しており、約15%のデータ損失から回復できます。傷がついたり、部分的に隠れたりする可能性のある印刷済みバーコードの場合は、このレベルをHに上げることができます。
出力
Barcode Generator C# Source Code Using IronBarcode:イメージ3 - QRコード出力。
EAN-13バーコードが必要な小売製品については、次のようなバーコード画像を生成します:
using IronBarCode;
// Generate an EAN-13 barcode compatible with UPC for retail print applications
var eanBarcode = BarcodeWriter.CreateBarcode("5901234123457", BarcodeWriterEncoding.EAN13);
eanBarcode.SaveAsPng("retail-product.png");
using IronBarCode;
// Generate an EAN-13 barcode compatible with UPC for retail print applications
var eanBarcode = BarcodeWriter.CreateBarcode("5901234123457", BarcodeWriterEncoding.EAN13);
eanBarcode.SaveAsPng("retail-product.png");
Imports IronBarCode
' Generate an EAN-13 barcode compatible with UPC for retail print applications
Dim eanBarcode = BarcodeWriter.CreateBarcode("5901234123457", BarcodeWriterEncoding.EAN13)
eanBarcode.SaveAsPng("retail-product.png")
EAN-13は、世界中の小売店におけるPOSシステムの標準フォーマットです。ライブラリはチェックデジットを自動的に計算するため、有効なGTIN-13番号の最初の12桁を入力するだけで済みます。 入力されたチェックデジットが一致しない場合、 IronBarcodeは読み取り不能なバーコードを黙って生成するのではなく、分かりやすい例外をスローします。
出力
Barcode Generator C# Source Code Using IronBarcode:イメージ4 - EAN-13バーコード出力。
このライブラリは、Code 128、QRコード、EAN-13に加えて、Code 39、Code 93、UPC-A、UPC-E、ITF、Codabar、PDF-417、Aztec、およびData Matrixをサポートしています。 サポートされているフォーマットの完全なリストは、 IronBarcodeのバーコードタイプのリファレンスページで確認できます。
高度なスタイル設定オプションを使用して、スタイリッシュなQRコードを作成するにはどうすればよいですか?
専門的なバーコード生成には、色を調整したり注釈を追加したりする高度なスタイリングオプションが必要になることがよくあります。 CODE-42383--@@クラスは、スタイリング・メソッドを備えた流暢なAPIを提供します:
using IronBarCode;
using IronSoftware.Drawing;
// Create a styled barcode with advanced styling options
var styledBarcode = BarcodeWriter
.CreateBarcode("INV-2025-001847", BarcodeWriterEncoding.Code128)
.ResizeTo(400, 120)
.SetMargins(20)
.ChangeBarCodeColor(Color.DarkBlue)
.AddAnnotationTextAboveBarcode("Invoice Number:")
.AddBarcodeValueTextBelowBarcode();
// Verify to ensure proper scanning after styling
bool isReadable = styledBarcode.Verify();
Console.WriteLine($"Barcode verification: {(isReadable ? "PASS" : "FAIL")}");
styledBarcode.SaveAsPng("styled-invoice-barcode.png");
using IronBarCode;
using IronSoftware.Drawing;
// Create a styled barcode with advanced styling options
var styledBarcode = BarcodeWriter
.CreateBarcode("INV-2025-001847", BarcodeWriterEncoding.Code128)
.ResizeTo(400, 120)
.SetMargins(20)
.ChangeBarCodeColor(Color.DarkBlue)
.AddAnnotationTextAboveBarcode("Invoice Number:")
.AddBarcodeValueTextBelowBarcode();
// Verify to ensure proper scanning after styling
bool isReadable = styledBarcode.Verify();
Console.WriteLine($"Barcode verification: {(isReadable ? "PASS" : "FAIL")}");
styledBarcode.SaveAsPng("styled-invoice-barcode.png");
Imports IronBarCode
Imports IronSoftware.Drawing
' Create a styled barcode with advanced styling options
Dim styledBarcode = BarcodeWriter _
.CreateBarcode("INV-2025-001847", BarcodeWriterEncoding.Code128) _
.ResizeTo(400, 120) _
.SetMargins(20) _
.ChangeBarCodeColor(Color.DarkBlue) _
.AddAnnotationTextAboveBarcode("Invoice Number:") _
.AddBarcodeValueTextBelowBarcode()
' Verify to ensure proper scanning after styling
Dim isReadable As Boolean = styledBarcode.Verify()
Console.WriteLine($"Barcode verification: {(If(isReadable, "PASS", "FAIL"))}")
styledBarcode.SaveAsPng("styled-invoice-barcode.png")
流暢なAPIにより、スタイリング・メソッドを連鎖させて、色の調整、余白の設定、テキストの追加を1つのステートメントで行うことができます。 CODE-42384--@@@メソッドは、バーコードが機械可読性を維持しているかどうかを示します。
バーコードの色を非常に薄い色に変更したり、白い背景に対してコントラストの低い青色に変更したりすると、バーコードがスキャンできなくなる可能性があります。 色の変更後は、必ずVerify()@までご連絡ください。 検証に失敗した場合は、コントラストを上げるか、黒帯表示に戻してください。 バーコードのスタイル設定とカスタマイズに関するガイドでは、利用可能なすべてのスタイル設定方法を詳細に解説しています。
カタログ全体にわたって一貫したスタイリングで複数の BarCode を生成するには、標準のスタイリング・チェーンを各 GeneratedBarcode インスタンスに適用するヘルパー・メソッドを構築します。 この手法により、生成される数千枚の画像全体で、余白、フォントサイズ、色が均一に保たれます。
バーコードをさまざまな画像形式にエクスポートするにはどうすればよいですか?
さまざまな使用ケースに対応するため、複数のフォーマットでバーコード画像を生成します。 ライブラリは、PNG、JPEG、BMP、TIFF、PDF、HTMLに保存されます:
using IronBarCode;
var barcode = BarcodeWriter.CreateBarcode("EXPORT-TEST", BarcodeWriterEncoding.Code128);
// Export barcode images to various formats
barcode.SaveAsPng("barcode.png"); // Web-compatible raster image
barcode.SaveAsJpeg("barcode.jpg"); // Compressed format for email attachments
barcode.SaveAsTiff("barcode.tiff"); // High-quality format for print workflows
barcode.SaveAsPdf("barcode.pdf"); // PDF document output
barcode.SaveAsHtmlFile("barcode.html"); // HTML for inline web embedding
// Get as bitmap stream for web APIs or database storage
System.IO.Stream barcodeStream = barcode.ToStream();
System.Drawing.Bitmap bitmapImage = barcode.ToBitmap();
using IronBarCode;
var barcode = BarcodeWriter.CreateBarcode("EXPORT-TEST", BarcodeWriterEncoding.Code128);
// Export barcode images to various formats
barcode.SaveAsPng("barcode.png"); // Web-compatible raster image
barcode.SaveAsJpeg("barcode.jpg"); // Compressed format for email attachments
barcode.SaveAsTiff("barcode.tiff"); // High-quality format for print workflows
barcode.SaveAsPdf("barcode.pdf"); // PDF document output
barcode.SaveAsHtmlFile("barcode.html"); // HTML for inline web embedding
// Get as bitmap stream for web APIs or database storage
System.IO.Stream barcodeStream = barcode.ToStream();
System.Drawing.Bitmap bitmapImage = barcode.ToBitmap();
Imports IronBarCode
Dim barcode = BarcodeWriter.CreateBarcode("EXPORT-TEST", BarcodeWriterEncoding.Code128)
' Export barcode images to various formats
barcode.SaveAsPng("barcode.png") ' Web-compatible raster image
barcode.SaveAsJpeg("barcode.jpg") ' Compressed format for email attachments
barcode.SaveAsTiff("barcode.tiff") ' High-quality format for print workflows
barcode.SaveAsPdf("barcode.pdf") ' PDF document output
barcode.SaveAsHtmlFile("barcode.html") ' HTML for inline web embedding
' Get as bitmap stream for web APIs or database storage
Dim barcodeStream As System.IO.Stream = barcode.ToStream()
Dim bitmapImage As System.Drawing.Bitmap = barcode.ToBitmap()
CODE-42387--@@ メソッドは、ASP.NET Core Web API および Blazor アプリケーションと互換性のある BarCode データを返します。 CODE-42388--@@メソッドは、さらなる画像操作のためのSystem.Drawing.Bitmap@リファレンスを提供します。 既存のPDF文書にバーコードを印字する方法については、 IronBarcodeのPDFバーコードチュートリアルを参照してください。
出力
Barcode Generator C# Source Code Using IronBarcode:イメージ5 - PNGバーコード出力。
Barcode Generator C# Source Code Using IronBarcode:イメージ6 - HTMLバーコード出力。
適切なフォーマットを選択するには、その後のワークフローを考慮する必要があります。 PNGは可逆圧縮ではないため、WebサイトやアプリケーションのUIのデフォルト形式として適しています。 TIFFは、色の正確さが重要な印刷制作工程において好まれる形式です。 PDF出力は、印刷会社が直接処理できる、印刷準備済みの文書が必要な場合に便利です。 HTML出力では、base64形式の画像が埋め込まれた自己完結型のファイルが生成されます。これは、メールテンプレートやウェブポータルに便利です。
IronBarcodeはどのようなクロスプラットフォーム.NET環境をサポートしていますか?
IronBarcodeは、主要なすべての.NETプラットフォームにおけるバーコード生成をサポートしています。 配属先
| プラットフォーム | サポートされているランタイム | 典型的な使用例 |
|---|---|---|
| Windows | .NET 10、 .NET 8、 .NET Framework 4.6.2以降 | デスクトップアプリ、Windowsサービス、IISウェブサーバー |
| Linux | .NET 10、 .NET 8、 .NET Core 3.1以降 | Dockerコンテナ、AWS Lambda、Azure Functions |
| macOS | .NET 10、 .NET 8 | 開発環境、macOSサーバーアプリ |
| モバイル | .NET MAUI、Xamarin | iOSおよびAndroidモバイルアプリケーション |
| 雲 | Azure、AWS、Google 雲 | サーバーレス関数、コンテナ化されたマイクロサービス |
IronBarcodeのDockerセットアップガイドには、コンテナ化されたデプロイメントに必要なシステムライブラリの詳細が記載されています。 Linux上で実行する場合、通常libgdiplusとlibc6-devがDockerイメージにインストールされている必要があります。 Alpine Linuxでは、若干異なるパッケージセットが必要になります。このガイドでは、Ubuntu/DebianとAlpineの両方のDockerfileについて説明しています。
AWS Lambda のデプロイに関しては、 AWS Lambda デプロイの手順書で、ネイティブ依存関係をデプロイ パッケージにバンドルする方法と、バーコード レンダリングのワークロードを処理するためのメモリ制限を設定する方法について説明しています。
.NETでバーコード生成のベストプラクティスに従うにはどうすればよいですか?
C#アプリケーションでバーコード画像を生成する際に、一貫した手順に従うことで、現場で確実にスキャンできるバーコードと、販売時点情報管理(POS)や倉庫でスキャンに失敗するバーコードとの違いが生まれます。 以下のガイドラインは、どのバーコード形式を選択する場合でも適用されます。
用途に合ったバーコード形式を選択してください。スキャン環境とデータ要件に合致する形式を選びましょう。 URLや80文字を超えるデータにはQRコードを使用してください。 英数字データがコンパクトな直線状の記号に収まる必要がある在庫管理や物流には、コード128を使用してください。 GS1システムへの登録が必要な小売製品には、EAN-13またはUPC-Aを使用してください。 IronBarcodeのバーコードフォーマット比較ページでは、サポートされているすべてのタイプ、それぞれの容量制限、推奨される使用例を並べて比較できます。
必ず十分な静止領域を設けてください。バーコードの周囲の空白部分(静止領域)は、バーコード自体と同じくらい重要です。 スキャナはこれを利用して、シンボルの開始位置と終了位置を検出します。 デジタル表示の場合はSetMargins()@メソッドを使用して、各辺に少なくとも10ピクセルのパディングを追加し、印刷出力の場合は少なくとも2.5 mmのパディングを追加してください。 静止領域に侵入することは、生産現場におけるスキャン失敗の最も一般的な原因の一つです。
スタイルを変更したら検証してください。色を調整したり、グラデーションを適用したり、非標準的な寸法にリサイズしたりしたら、Verify()@をGeneratedBarcode@オブジェクト上で呼び出してください。 戻り値がfalseの場合、標準のハードウェアではバーコードが確実にスキャンされません。 コントラストを上げるか、スタイルの変更の複雑さを軽減してください。
大量の出力にはバッチ生成パターンを使用してください。アプリケーションが数千個のバーコード(例えば、製品ラベルや出荷明細書など)を生成する場合は、それらをループ処理し、同じスタイル設定を再利用してください。 フォントアセットや設定オブジェクトをループ内で読み込むことは避けてください。不要なオーバーヘッドが発生します。 IronBarcodeのバッチバーコード生成例は、一貫した出力を実現する効率的なループパターンを示しています。
複数のスキャナーモデルと照明条件下でテストを実施してください。バーコードスキャナーは、低コントラストの色に対する耐性、モジュールの小型化、印刷品質などが機種によって異なります。 印刷したバーコードは、展開前に少なくとも2種類の異なるスキャナーでテストしてください。 画面に表示されるQRコードについては、明るい場所と暗い場所の両方で、携帯電話のカメラを使ってテストしてください。 GS1バーコード検証規格のページには、小売用バーコードのシンボル品質等級付けに関する権威あるガイダンスが掲載されています。
データ容量制限を遵守してください。すべてのバーコード形式には最大データ容量が設定されています。 Code 128では、標準的なラベルサイズで印刷するには記号が幅広すぎる前に、約48文字まで快適にエンコードできます。 QRコードの容量は誤り訂正レベルによって異なり、レベルHでは最大で約1,273文字の英数字が記録可能です。 容量を超過すると、ライブラリは例外をスローするか、あるいは黙って品質を低下させるかのどちらかを選択せざるを得なくなります。 容量を簡単に確認するには、 WikipediaのQRコードデータ容量に関する項目を参照してください。
.NETのdisposeパターンに従ってください。@--CODE-42395--@@と、@@--CODE-42396--@によって返されるストリームは、@@--CODE-42397--@を実装しています。 特に、リクエストごとにBarcode生成が行われるような高スループットのWebアプリケーションでは、管理されていないリソースを速やかに解放するために、using@ステートメントで包んでください。
一般的な障害モードを理解することは、より堅牢な生成コードを構築する上でも役立ちます。 スキャン失敗の最も一般的な原因は、静止領域が不十分であること、バーの色が背景色に近すぎること、およびバーコードが選択したフォーマットの最小モジュールサイズよりも小さく縮小されていることです。 IronBarcodeのVerify()メソッドはこの3つを実行時にキャッチします。
生成された画像からバーコードを読み取る方法(往復テストやアップロードされたファイルのスキャンなど)については、 IronBarcodeバーコードリーダーガイドを参照してください。 リーダーAPIは、シンプルさという点でライターAPIを模倣しており、同様に幅広いフォーマットをサポートしています。
IronBarcodeが準拠する技術仕様は、Code 128に関するISO/IEC 15417規格とQRコードに関するISO/IEC 18004規格によって規定されています。 対象となるバーコードの種類に関連する規格を確認することで、図書館が遵守しなければならない制約を理解するのに役立ちます。
次のステップは何ですか?
このガイドでは、 IronBarcodeを使用して C# でバーコード画像を生成する方法について説明しました。NuGetのインストールから、Code 128、QR コード、EAN-13 の生成、流暢な API を使用した高度なスタイリング、マルチフォーマットのエクスポート、クロスプラットフォーム展開、本番環境でのベストプラクティスまでを網羅しています。
さらに詳しく知りたい場合は、以下のリソースをご覧ください。
- IronBarcodeフルAPIリファレンス--@--CODE-42400--@、@--CODE-42401--@、およびすべての列挙の完全なメソッドのドキュメント。
- IronBarcodeバーコードリーダーチュートリアル- 画像、PDF、ストリームからバーコードを読み取り、デコードする方法 -バッチバーコード生成の例- ラベル印刷および出荷ワークフロー向けの大量生成パターン
- IronBarcodeのライセンスと価格 -- オプションは$799から始まります。
IronBarcodeをダウンロードして、 .NETアプリケーションにバーコード機能を追加するか、ライセンスキーなしで環境内でバーコード画像を生成できる30日間の無料トライアルを開始してください。
よくある質問
NuGetパッケージ マネージャーを使用してIronBarcodeをインストールするにはどうすればよいですか?
Visual Studioを開き、「ツール」> 「NuGetパッケージ マネージャー」>「パッケージ マネージャー コンソール」に移動し、 「Install-Package BarCode」を実行します。または、 NuGetパッケージ マネージャー UI で「 IronBarcode 」を検索し、「インストール」をクリックします。
IronBarcodeを使用してどのような種類のバーコードを生成できますか?
IronBarcode は、QR コード、コード 128、コード 39、コード 93、UPC-A、UPC-E、EAN-13、EAN-8、PDF-417、データ マトリックス、Aztec など、幅広い種類のバーコードの生成をサポートしています。
IronBarcodeは異なる画像フォーマットのバーコードを生成できますか?
はい、 IronBarcode は、SaveAsPng、SaveAsJpeg、SaveAsTiff、SaveAsPdf、および SaveAsHtmlFile メソッドを使用して、PNG、JPEG、BMP、TIFF、PDF、および HTML 形式のバーコードを生成できます。
IronBarcode は.NET 10 と互換性がありますか?
はい、 IronBarcodeは.NET 10、 .NET 8、 .NET 6、 .NET Core、 .NET Standard、 .NET Frameworkと完全に互換性があり、バーコード生成をクロスプラットフォーム アプリケーションに統合できます。
IronBarcodeを使用してバーコードの外観をカスタマイズするにはどうすればよいですか?
IronBarcodeは、GeneratedBarcodeクラスにスムーズなAPIを提供します。ResizeTo()、SetMargins()、ChangeBarCodeColor()、AddAnnotationTextAboveBarcode()、AddBarcodeValueTextBelowBarcode()などのメソッドを連携させることで、外観をカスタマイズできます。スタイル設定後は必ずVerify()を呼び出して、バーコードがスキャン可能であることを確認してください。
IronBarcodeはバーコードの読み取りとスキャンをサポートしていますか?
はい、 IronBarcode は、BarcodeReader クラスとその Read メソッドを使用して、画像、PDF、ストリームからのバーコードの読み取りとスキャンをサポートしています。
IronBarcodeを使用してバーコードを一括生成できますか?
はい、 IronBarcodeは一括生成をサポートしています。ループでデータを反復処理し、各項目に対してBarcodeWriter.CreateBarcode()を呼び出し、標準のスタイルチェーンを適用します。効率化のため、ループ外で設定オブジェクトを再利用してください。
IronBarcodeの試用版はありますか?
はい、 IronBarcodeは30日間の無料トライアルライセンスを提供しています。ironsoftware.com/csharp/barcode/licensing/#trial-license にアクセスしてトライアルキーを取得し、評価期間中はウォーターマークなしですべての機能をご利用ください。



