
IronBarcodeを使用して C# でバーコードを生成する方法
IronBarcodeは、わずか数行のコードでC#からバーコードを生成および読み取ることができる.NETバーコードライブラリです。 Code 128、QRコード、EAN-13、PDF-417、データマトリックスなど、数十種類のバーコードを作成し、PNG、JPEG、TIFF、BMP、PDF、またはHTML形式でエクスポートできます。 このガイドでは、インストール、コア生成パターン、スタイル設定、エクスポート形式、およびベストプラクティスについて説明し、あらゆる.NETアプリケーションに信頼性の高いバーコード出力機能を追加できるようにします。
NuGetパッケージマネージャーを使用してバーコード生成ライブラリをインストールするにはどうすればよいですか?
Visual Studioを開き、パッケージ・マネージャ・コンソールでこのコマンドを使用してNuGetパッケージをインストールします:

NuGetパッケージは、.NET 10、 .NET 8、 .NET 6、 .NET Core、 .NET Standard、および.NET Frameworkをサポートしており、Windows アプリケーションおよびクロスプラットフォーム for .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");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")BarcodeWriterEncodingからバーコード形式を受け入れます。 返されたGeneratedBarcode参照は、スタイリングメソッドとPNG、JPEG、BMP、TIFF、PDF、またはHTMLに保存するためのエクスポートオプションを提供します。
出力

Code128は、物流および在庫管理システムにおいて最も広く使われているバーコードです。 大文字、小文字、数字、特殊文字をコンパクトな線形形式でエンコードします。 このバーコードタイプは、世界中の配送施設や小売環境での適切なスキャンを保証します。SaveAsPng()メソッドを使用すると、IronBarcodeは自動的に画面表示および標準プリンターに適した解像度を設定します。
Webエンドポイントから直接バーコードイメージを提供する必要があるアプリケーションでは、ディスクに保存する代わりにToStream()を使用できます。 ストリームはASP.NET Coreの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");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に上げることができます。
出力

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");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は読み取り不能なバーコードを黙って生成するのではなく、分かりやすい例外をスローします。
出力

このライブラリは、Code 128、QRコード、EAN-13に加えて、Code 39、Code 93、UPC-A、UPC-E、ITF、Codabar、PDF-417、Aztec、およびData Matrixをサポートしています。 サポートされているフォーマットの完全なリストは、 IronBarcodeのバーコードタイプのリファレンスページで確認できます。
高度なスタイル設定オプションを使用して、スタイリッシュなQRコードを作成するにはどうすればよいですか?
専門的なバーコード生成には、色を調整したり注釈を追加したりする高度なスタイリングオプションが必要になることがよくあります。 GeneratedBarcodeクラスは、スタイリングメソッドを備えた流暢な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");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つのステートメントで行うことができます。 Verify()メソッドは、バーコードが機械で読み取れる状態であるかを示します。非標準の色を適用したり、小さな寸法にリサイズした後の本番環境での適切なスキャンを保証します。
バーコードの色を非常に薄い色に変更したり、白い背景に対してコントラストの低い青色に変更したりすると、バーコードがスキャンできなくなる可能性があります。 色が変更された後に、Verify()を必ず呼び出してください。 検証に失敗した場合は、コントラストを上げるか、黒帯表示に戻してください。 バーコードスタイリングとカスタマイズガイドは、利用可能なすべてのスタイルメソッドを詳しく説明しています。
全カタログで一貫したスタイリングで複数のバーコードを生成するには、標準のスタイリングチェーンを各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();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()ToStream()メソッドは、ASP.NET Core Web APIとBlazorアプリケーションに対応したバーコードデータを返します。 System.Drawing.Bitmap参照を提供します。 既存のPDFドキュメントにバーコードをスタンプする場合は、IronBarcode PDFバーコードチュートリアルをご覧ください。
出力


適切なフォーマットを選択するには、その後のワークフローを考慮する必要があります。 PNGは可逆圧縮ではないため、WebサイトやアプリケーションのUIのデフォルト形式として適しています。 TIFFは、色の正確さが重要な印刷制作工程において好まれる形式です。 PDF出力は、印刷会社が直接処理できる、印刷準備済みの文書が必要な場合に便利です。 HTML出力では、base64形式の画像が埋め込まれた自己完結型のファイルが生成されます。これは、メールテンプレートやウェブポータルに便利です。
IronBarcodeはどのようなクロスプラットフォーム.NET環境をサポートしていますか?
IronBarcodeは、主要なすべて for .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で実行する場合、通常はDockerイメージにlibc6-devがインストールされている必要があります。 Alpine Linuxでは、若干異なるパッケージセットが必要になります。このガイドでは、Ubuntu/DebianとAlpineの両方のDockerfileについて説明しています。
AWS Lambda のデプロイに関しては、 AWS Lambda デプロイの手順書で、ネイティブ依存関係をデプロイ パッケージにバンドルする方法と、バーコード レンダリングのワークロードを処理するためのメモリ制限を設定する方法について説明しています。
.NETでバーコード生成のベストプラクティスに従うにはどうすればよいですか?
C#アプリケーションでバーコード画像を生成する際に、一貫した手順に従うことで、現場で確実にスキャンできるバーコードと、販売時点情報管理(POS)や倉庫でスキャンに失敗するバーコードとの違いが生まれます。 以下のガイドラインは、どのバーコード形式を選択する場合でも適用されます。
**用途に合ったバーコード形式を選択してください。**スキャン環境とデータ要件に合致する形式を選びましょう。 URLや80文字を超えるデータにはQRコードを使用してください。 英数字データがコンパクトな直線状の記号に収まる必要がある在庫管理や物流には、コード128を使用してください。 GS1システムへの登録が必要な小売製品には、EAN-13またはUPC-Aを使用してください。 IronBarcodeのバーコードフォーマット比較ページは、すべてのサポートされているタイプのサイドバイサイドの参照とその容量制限、および推奨使用ケースを提供します。
**必ず十分な静止領域を設けてください。**バーコードの周囲の空白部分(静止領域)は、バーコード自体と同じくらい重要です。 スキャナはこれを利用して、シンボルの開始位置と終了位置を検出します。 デジタル表示用に各辺に少なくとも10ピクセルの余白を、印刷出力用に少なくとも2.5mmを追加するにはSetMargins()メソッドを使用します。 静止領域に侵入することは、生産現場におけるスキャン失敗の最も一般的な原因の一つです。
スタイリング変更後は必ず確認してください。 色調整やグラデーションの適用、非標準寸法へのリサイズ後は、Verify()を呼び出してください。 戻り値がfalseの場合、標準のハードウェアではバーコードが確実にスキャンされません。 コントラストを上げるか、スタイルの変更の複雑さを軽減してください。
**大量の出力にはバッチ生成パターンを使用してください。**アプリケーションが数千個のバーコード(例えば、製品ラベルや出荷明細書など)を生成する場合は、それらをループ処理し、同じスタイル設定を再利用してください。 フォントアセットや設定オブジェクトをループ内で読み込むことは避けてください。不要なオーバーヘッドが発生します。 IronBarcodeバッチバーコード生成の例は、一貫性のある出力を備えた効率的なループパターンを示しています。
**複数のスキャナーモデルと照明条件下でテストを実施してください。**バーコードスキャナーは、低コントラストの色に対する耐性、モジュールの小型化、印刷品質などが機種によって異なります。 印刷したバーコードは、展開前に少なくとも2種類の異なるスキャナーでテストしてください。 画面に表示されるQRコードについては、明るい場所と暗い場所の両方で、携帯電話のカメラを使ってテストしてください。 GS1バーコード検証規格のページには、小売用バーコードのシンボル品質等級付けに関する権威あるガイダンスが掲載されています。
**データ容量制限を遵守してください。**すべてのバーコード形式には最大データ容量が設定されています。 Code 128では、標準的なラベルサイズで印刷するには記号が幅広すぎる前に、約48文字まで快適にエンコードできます。 QRコードの容量は誤り訂正レベルによって異なり、レベルHでは最大で約1,273文字の英数字が記録可能です。 容量を超過すると、ライブラリは例外をスローするか、あるいは黙って品質を低下させるかのどちらかを選択せざるを得なくなります。 容量を簡単に確認するには、 WikipediaのQRコードデータ容量に関する項目を参照してください。
.NETの処分パターンに従ってください。 IDisposableを実装しています。 特に高スループットのウェブアプリケーションでリクエストごとにバーコード生成が行われる場合は、非管理リソースを速やかに解放するために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リファレンス --
GeneratedBarcode、およびすべての列挙の完全なメソッドドキュメント - IronBarcodeバーコードリーダーチュートリアル -- 画像、PDF、ストリームからバーコードを読み取り、デコード
- バッチバーコード生成例 -- ラベル印刷および出荷ワークフロー向けの大量生成パターン
- IronBarcodeライセンスと価格 -- $999から始まるオプション
IronBarcodeをダウンロードして、 .NETアプリケーションにバーコード機能を追加するか、ライセンスキーなしで環境内でバーコード画像を生成できる30日間の無料トライアルを開始してください。

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


