IRONSOFTWAREHOME
IRONBARCODEの使用

IronBarcodeを使って C# で QR コードを生成する方法

Curtis Chau
Curtis Chau
Updated: 2026年5月8日

IronBarcodeは、 QRCodeWriterクラスを使用することで、 .NET開発者が効率的にQRコードを作成できるようにします。 カスタムロゴ、カラー、複数の出力フォーマット、そしてWindows、Linux、macOS、モバイルを含むクロスプラットフォーム展開に対応しています。

このガイドでは、 IronBarcodeを使用して生産システム用のQRコードを生成する方法を説明します。 IronBarcodeのAPIは、 .NETの規約に準拠しながら、Enterpriseアプリケーションに必要なパフォーマンスと信頼性を提供します。 このライブラリは完全なドキュメントを提供し、Windows、Linux、macOS、およびモバイルプラットフォームへの展開をサポートしています。 すべての機能の概要については、機能ページをご覧ください。 バーコードクイックスタートガイドには、すぐに始められる実践的な例が掲載されています。

IronBarcodeを使用してQRコードを生成するメリットは何ですか?

他のライブラリではなく、 IronBarcodeを選ぶ理由とは?

IronBarcodeでQRコードを生成するにはどうすればよいですか?

以下のセクションでは、SOLID原則に準拠した、実運用可能なコード例を示します。 様々な種類のQRコードを作成する方法、カスタムスタイルを実装する方法、そして信頼性の高いスキャン性能を確保する方法を学びます。 このライブラリの機能には、QRコード以外にも1次元および2次元バーコードのサポートが含まれています。 より高度なシナリオについては、 APIリファレンスを参照して完全なメソッドシグネチャを確認してください。 IronBarcodeの機能を実際に体験するには、デモをご覧ください。

新しいプロジェクトを設定するにはどうすればよいですか?

Visual Studioを開き、ファイルメニューから**"新規プロジェクト"**を選択します。 Enterprise環境への導入においては、自動インストールに関するMSIインストーラーガイドを参照することをお勧めします。 はじめにの概要には、完全なセットアップ手順が記載されています。

コンソールアプリのテンプレートを選択し、"次へ"をクリックします。

希望するプロジェクト名(例: QRコードジェネレーター)を入力し、場所を指定してください。 **"次へ"**をクリックしてください。

ドロップダウンリストから.NET Framework ( .NET 6.0 (長期サポート) ) を選択し、[作成] をクリックします。 IronBarcodeは、互換性に関するドキュメントに記載されているとおり、すべての最新 for .NETバージョンをサポートしています。 具体的なプラットフォーム要件については、 Blazor統合ガイドを参照してください。

どのようなインストール方法が利用できますか?

IronBarcodeは、さまざまなワークフローに適した4つの方法のいずれかを使用してインストールできます。 図書館の実演では、リアルタイムのバーコード認識機能が紹介されている。 手早くテストするには、バーコードクイックスタートの例をご覧ください。

Visual StudioのパッケージマネージャーUIを使用してインストールするにはどうすればよいですか?

ツール> NuGetパッケージ マネージャー>ソリューションのNuGetパッケージの管理 に移動してください。

または、ソリューションエクスプローラーでプロジェクトを右クリックし、 "NuGetパッケージの管理"を選択します。

*"参照"*をクリックし、 *"バーコード"を検索して"IronBarcode"*を選択し、プロジェクトを選択して"インストール"をクリックします。 プラットフォーム固有のインストールについては、 NuGetパッケージ ガイドを参照してください。 問題が発生した場合は、 NuGet のトラブルシューティング ガイドを参照してください。 このライブラリは、AWS LambdaAzure Functionsなど、さまざまなデプロイシナリオをサポートしています。

パッケージマネージャーコンソールを使用してインストールするにはどうすればよいですか?

ツール> NuGetパッケージ マネージャー>パッケージ マネージャー コンソールを開き、以下を実行します。

PM > Install-Package BarCode

これにより、ライブラリが現在のプロジェクトにインストールされます。 コンテナ化されたデプロイメントについては、 Dockerセットアップガイドに従ってください。 ライセンスキーを使用する場合は、展開環境に適した設定になっていることを確認してください。

NuGetまたはIronBarcodeのウェブサイトからダウンロードするにはどうすればよいですか?

NuGet Galleryのウェブサイトからダウンロードするか、IronBarcodeのホームページにアクセスして、最新 for .NETバーコードDLLを入手してください。 ソリューションエクスプローラーの**"追加"** > **"参照"**から、DLLをプロジェクトに追加してください。 DLL の問題のトラブルシューティングについては、" DLL が見つからない場合のガイド"を参照してください。 実行時に問題が発生した場合は、実行時コピー例外ガイドを参照してください。

QRコード画像を作成・カスタマイズするにはどうすればよいですか?

基本的なQRコードを生成するにはどうすればよいですか?

CreateQrCodeメソッドを使用してQRコードを作成します。 完全な例については、 C# の QR コード生成チュートリアルを参照してください。 このライブラリは、さまざまな形式でバーコード画像を作成することをサポートしています。

using IronBarCode;

// Basic QR code generation with medium error correction
var qrCode = QRCodeWriter.CreateQrCode("hello world", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0);
qrCode.SaveAsPng("MyQR.png");

// Generate QR code with automatic sizing and highest error correction
var autoQr = QRCodeWriter.CreateQrCode("Automatic sizing example");
autoQr.SaveAsJpeg("AutoQR.jpg");

// Production-ready QR code with validation
public GeneratedBarcode CreateValidatedQrCode(string data, int size = 600)
{
    if (string.IsNullOrWhiteSpace(data))
        throw new ArgumentException("Data cannot be empty");
    
    if (data.Length > 2953) // QR Code capacity at highest error correction
        throw new ArgumentException("Data exceeds QR code capacity");
    
    var qr = QRCodeWriter.CreateQrCode(data, size, QRCodeWriter.QrErrorCorrectionLevel.High);
    qr.VerifyQrCode(); // Verify the generated code is valid
    return qr;
}

CreateQrCodeメソッドは以下を受け入れます:

  • 必須:エンコードするデータ(文字列またはストリーム)
  • オプション:画像サイズ(デフォルト:500x500ピクセル)
  • オプション:エラー訂正レベル(低7%、中15%、高25%、最高30%)
  • オプション:QRコードのバージョン番号(自動更新の場合は0)

高性能なバッチ処理には、非同期操作カスタムスタイルを使用してください。 不完全な条件下で作業する場合は、耐障害性機能を使用してください。 バーコード読み取りチュートリアルでは、生成されたコードを検証する方法を説明します。

QRコードにはどのようなデータ型をエンコードできますか?

生産用途でよく使われるQRコードのデータタイプには、さまざまなソースからバーコードを作成する機能が含まれます。 詳細な例については、 "QRコード作成の例"を参照してください。 IronBarcodeは、国際文字エンコーディングのためのUnicodeバーコードをサポートしています。

URL QRコード:

// Generate QR code for website URL
var urlQr = QRCodeWriter.CreateQrCode("___PROTECTED_URL_76___", 800);
urlQr.SetMargins(10); // Add quiet zone
urlQr.SaveAsPng("campaign-qr.png");

// Advanced URL QR code with tracking
public GeneratedBarcode CreateTrackableUrlQr(string baseUrl, Dictionary<string, string> utmParams)
{
    var uriBuilder = new UriBuilder(baseUrl);
    var query = System.Web.HttpUtility.ParseQueryString(uriBuilder.Query);
    
    foreach (var param in utmParams)
        query[param.Key] = param.Value;
    
    uriBuilder.Query = query.ToString();
    var qr = QRCodeWriter.CreateQrCode(uriBuilder.ToString(), 1000);
    return qr;
}

vCard連絡先情報:

string vCard = @"BEGIN:VCARD
VERSION:3.0
FN:John Smith
ORG:Tech Corp
TEL:+1-555-0123
EMAIL:john@example.com
END:VCARD";

var contactQr = QRCodeWriter.CreateQrCode(vCard, 600, QRCodeWriter.QrErrorCorrectionLevel.Medium);
contactQr.SaveAsPng("contact-card.png");

WiFi 設定:

string wifiConfig = "WIFI:T:WPA;S:NetworkName;P:Password123;;";
var wifiQr = QRCodeWriter.CreateQrCode(wifiConfig, 500);
wifiQr.SaveAsPng("wifi-config.png");

IronBarcodeは、国際文字のUnicodeサポートに対応しており、スペースに制約のあるアプリケーション向けにMicro QRやrMQRなどのフォーマットもサポートしています。 特殊なフォーマットについては、新しいフォーマットのマイルストーンを参照してください。 特殊なデータ形式を扱う場合、このライブラリはストリームから読み込みストリームとしてエクスポートすることで、メモリを効率的に使用できます。

ロゴやカスタムスタイルを追加するにはどうすればよいですか?

QRコードに会社のロゴを追加するためにCreateQrCodeWithLogoを使用します。 スタイリングオプションの詳細については、カスタムQRコードの例QRコードスタイリングガイドを参照してください。 このライブラリは、すべてのバーコードタイプに対応した一般的なバーコードスタイルもサポートしています。

// Create QR code with embedded logo
var qrWithLogo = QRCodeWriter.CreateQrCodeWithLogo("Hello World", "logo.png", 500);
qrWithLogo.ChangeBarCodeColor(System.Drawing.Color.DarkRed);
qrWithLogo.SaveAsPng("Logo_QR_Code.png");

// Advanced logo customization
var logo = new QRCodeLogo("company-logo.png")
{
    Width = 100,
    Height = 100,
    CornerRadius = 5
};
var advancedQr = QRCodeWriter.CreateQrCodeWithLogo("Advanced Example", logo, 600);

// Production-ready branded QR code
public GeneratedBarcode CreateBrandedQrCode(string data, string logoPath, string brandColor)
{
    var logo = new QRCodeLogo(logoPath)
    {
        Width = 80,
        Height = 80,
        CornerRadius = 10
    };
    
    var qr = QRCodeWriter.CreateQrCodeWithLogo(data, logo, 800);
    qr.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml(brandColor));
    qr.SetMargins(15);
    return qr;
}

バーコードカスタマイズ機能を使用して、さらにスタイルを適用できます。 スタイリングバーコード機能では、完全なカスタマイズオプションが提供されます。

// Use HTML color codes for brand colors
qrWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"));
qrWithLogo.ChangeBackgroundColor(System.Drawing.Color.LightGray);
qrWithLogo.AddAnnotationTextAboveBarcode("SCAN ME");
qrWithLogo.AddAnnotationTextBelowBarcode("Company Name");

利用可能なエクスポート形式は何ですか?

さまざまな用途に合わせて、QRコードを多様な形式で保存します。 バーコード保存の例バーコード画像生成チュートリアルで詳細をご覧ください。 特殊な要件については、 1-BPPバーコード画像の作成に関するガイドを参照してください。

// Image formats
qrWithLogo.SaveAsJpeg("qr.jpg");
qrWithLogo.SaveAsPng("qr.png");
qrWithLogo.SaveAsGif("qr.gif");
qrWithLogo.SaveAsTiff("qr.tiff");

// Web formats
qrWithLogo.SaveAsHtmlFile("qr.html");
string dataUrl = qrWithLogo.ToDataUrl();

// Print formats
qrWithLogo.SaveAsPdf("qr.pdf");
qrWithLogo.ChangeBarcodeDpi(300);

// API formats
byte[] qrBytes = qrWithLogo.ToPngBinaryData();
var stream = qrWithLogo.ToStream();

// High-quality print export
public void ExportForPrint(GeneratedBarcode qr, string filename)
{
    qr.ChangeBarcodeDpi(600); // 高い DPI for print
    qr.ResizeTo(2000, 2000); // Large size
    qr.SaveAsTiff(filename); // Lossless format
}

PDF固有の操作については、 PDFとしてバーコードを作成する方法と、既存のPDFにバーコードを印字する方法に関するガイドを参照してください。 PDFファイルからバーコードを読み取る際は、最適な結果を得るためにPDFバーコードリーダーの設定を使用してください。

ウェブアプリケーションにQRコードを実装するにはどうすればよいですか?

ASP.NET MVC アプリケーションでは、ファイル I/O を使用せずにストリーミングを実装します。 このライブラリは、Webに直接統合するためのHTML形式のバーコード作成をサポートしています。

public IActionResult GetQrCode(string data)
{
    var qr = QRCodeWriter.CreateQrCode(data, 400);
    byte[] qrBytes = qr.ToPngBinaryData();
    return File(qrBytes, "image/png", "qrcode.png");
}

// Stream directly without disk I/O
public IActionResult StreamQrCode(string content)
{
    var qr = QRCodeWriter.CreateQrCode(content, 500);
    var stream = qr.ToStream();
    return File(stream, "image/png");
}

// Generate HTML-embedded QR codes
public IActionResult GetHtmlQrCode(string data)
{
    var qr = QRCodeWriter.CreateQrCode(data, 400);
    var htmlString = qr.ToHtmlTag();
    return Content(htmlString, "text/html");
}

Blazorアプリケーションの場合、リアクティブなQRコード生成を実装します。

@page "/qrcode"
@using IronBarCode

<input @bind="qrText" placeholder="Enter text" />
<button @onclick="GenerateQr">Generate</button>

@if (!string.IsNullOrEmpty(QrCodeDataUrl))
{
    <img src="@QrCodeDataUrl" alt="QR Code" />
}

@code {
    private string qrText = "";
    private string QrCodeDataUrl = "";

    private void GenerateQr()
    {
        if (!string.IsNullOrEmpty(qrText))
        {
            var qr = QRCodeWriter.CreateQrCode(qrText, 400);
            QrCodeDataUrl = qr.ToDataUrl();
        }
    }
}

バーコードをHTMLとしてエクスポートするには、 "バーコードをHTMLとして作成する"ガイドを参照してください。 ウェブアプリケーションでライセンスを適用する場合は、 web.config ライセンスキーガイドを参照してください。

QRコード導入におけるベストプラクティスとは?

どの誤り訂正レベルを選択すべきですか?

エラー訂正は、回復力と処理能力に影響を与える。 詳細については、エラー訂正ガイドを参照してください。 このライブラリには、精度向上のための機械学習信頼度閾値が含まれています。

レベル回復使用例
低レベル7%クリーンなデジタル環境
中規模15%印刷物、名刺
高い25%屋外看板、取り扱い商品
最高30%工業用途、ロゴ追加済み

QRコードのサイズはどのくらいにすべきですか?

スキャン距離に基づいて最適なサイズを計算します。 スキャン精度を向上させるための余白設定について学びましょう。 余白設定の例は、ベストプラクティスを示しています。

// 1:10 ratio - 1cm QR per 10cm distance
int CalculateQrSize(double scanDistanceMeters)
{
    int sizeInCm = (int)(scanDistanceMeters * 10);
    return (int)(sizeInCm * 37.8); // Convert to pixels at 96 DPI
}

// Set appropriate margins for reliable scanning
public GeneratedBarcode CreateScanOptimizedQr(string data, int scanDistance)
{
    int size = CalculateQrSize(scanDistance);
    var qr = QRCodeWriter.CreateQrCode(data, size);
    qr.SetMargins(size / 20); // 5% margin
    return qr;
}

モバイル端末との互換性を確保するにはどうすればよいですか?

バーコードリーダーの設定を使用して、モバイルスキャンの精度を向上させます。 認識に関する問題が発生した場合は、バーコードが認識されない場合のトラブルシューティングガイドを参照してください。

public GeneratedBarcode CreateMobileOptimizedQr(string data)
{
    var qr = QRCodeWriter.CreateQrCode(data, 800, QRCodeWriter.QrErrorCorrectionLevel.Medium);
    qr.SetMargins(20); // Adequate quiet zone
    qr.ChangeBarCodeColor(System.Drawing.Color.Black);
    qr.ChangeBackgroundColor(System.Drawing.Color.White);
    return qr;
}

クロスプラットフォームのモバイル開発については、 .NET MAUIバーコードスキャナーのチュートリアルを参照してください。 このライブラリはiOSAndroidの両方のプラットフォームをネイティブにサポートしています。## 一般的な統合シナリオ

マーケティングキャンペーン用QRコードの作成

カスタムブランディングを施した追跡可能なマーケティング用QRコードを実装するには、バーコード読み取り速度の管理に関する読み取り速度ガイドを参照してください。

public GeneratedBarcode CreateCampaignQr(string campaignId, string userId)
{
    string trackingUrl = "___PROTECTED_URL_79___";
    var qr = QRCodeWriter.CreateQrCodeWithLogo(trackingUrl, "logo.png", 1000);
    qr.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#1E3A8A"));
    qr.AddAnnotationTextAboveBarcode($"Campaign: {campaignId}");
    return qr;
}

// Batch generate campaign materials
public async Task GenerateCampaignBatch(List<string> userIds, string campaignId)
{
    var tasks = userIds.Select(async userId =>
    {
        var qr = CreateCampaignQr(campaignId, userId);
        await Task.Run(() => qr.SaveAsPng($"campaigns/{campaignId}/{userId}.png"));
    });
    
    await Task.WhenAll(tasks);
}

製品ラベルのQRコードを生成する

在庫管理用のQRコードを作成する。 特殊なフォーマットの処理については、 GS1-128トラブルシューティングガイドを参照してください。 Code 39MSIバーコードなどの特定のバーコードタイプを扱う場合は、フォーマット固有のガイドを参照してください。

public void GenerateProductLabel(Product product)
{
    var productData = new
    {
        sku = product.SKU,
        batch = product.BatchNumber,
        expiry = product.ExpiryDate.ToString("yyyy-MM-dd")
    };
    
    string json = System.Text.Json.JsonSerializer.Serialize(productData);
    var qr = QRCodeWriter.CreateQrCode(json, 400, QRCodeWriter.QrErrorCorrectionLevel.High);
    qr.AddAnnotationTextAboveBarcode(product.Name);
    qr.SaveAsPng($"labels/product-{product.SKU}.png");
}

// Generate 1-BPP labels for thermal printers
public void GenerateThermalLabel(Product product)
{
    var qr = CreateProductQr(product);
    qr.SaveAs1BitPerPixelPng($"thermal/{product.SKU}.png");
}

特殊なラベル印刷については、 1-BPPバーコード画像ガイドを参照してください。 複数ページの文書を読む場合は、 複数ページのGIFおよびTIFFに関するガイドを参照してください。

バーコードスキャン性能の向上

大量のスキャンを行う場合は、スキャン領域を制限してパフォーマンスを向上させるために、切り抜き領域を設定してください。 読書速度オプションは、精度と速度のトレードオフを細かく調整できる機能を提供します。

// Define crop region for faster scanning
var cropRegion = new Rectangle(100, 100, 300, 300);
var options = new BarcodeReaderOptions
{
    Speed = ReadingSpeed.Faster,
    ExpectBarcodeTypes = BarcodeEncoding.QRCode,
    CropArea = cropRegion
};

var results = BarcodeReader.Read("image.png", options);

System.Drawingオブジェクトを扱うとき、ライブラリはIronDrawingを通じてクロスプラットフォーム互換性を提供します。

主な要点

IronBarcodeは、 .NETアプリケーションにおけるQRコード生成のための包括的なソリューションを提供します。 このライブラリは、直感的なAPI、充実したドキュメント、そして耐障害性クロスプラットフォーム対応パフォーマンス最適化といった本番環境ですぐに使える機能を提供します。 変更履歴を通じて、最新の機能情報をご確認ください。 セキュリティを重視した導入の場合は、セキュリティCVE開示情報を確認してください。

ライセンス情報については、ライセンスページをご覧ください。 IronBarcodeは、サポートやアップデートなどのプレミアムオプションを含む無料の開発者ライセンスを提供しています。 既存のお客様は、ライセンスの延長アップグレードのオプションをご確認ください。 ライセンスに関するサポートが必要な場合は、 ライセンスキーの適用ガイドweb.configのライセンス設定を参照してください。

本番環境へのデプロイについては、 AWS LambdaAzure Functions 、およびDockerコンテナに関するガイドを参照してください。 特定のデプロイメントの問題のトラブルシューティングについては、 AWS Lambda ランタイム ガイドおよびランタイム コピー例外の解決策を参照してください。 誤検出が発生した場合は、詳細なトラブルシューティングガイドを参照してください。

技術サポートが必要な場合は、エンジニアリングリクエストを送信してください。 ライブラリは、製品アップデートのセクションに記載されているように定期的にアップデートされ、継続的な互換性と新機能が保証されます。

簡単なQRコードの例で始めてみよう

わずか数行のコードで、カスタムスタイルのQRコードを生成できます。 その他の例については、バーコード作成の例を参照し、バーコード読み取りチュートリアルで包括的なバーコードソリューションをご覧ください。 その他の例としては、PDFファイルからバーコードを読み取ることや、データからバーコードを作成することなどが挙げられます。

using IronBarCode;

// Create QR code with custom size and error correction
var qrCode = QRCodeWriter.CreateQrCode("___PROTECTED_URL_81___", 500, QRCodeWriter.QrErrorCorrectionLevel.High);

// Add styling
qrCode.ChangeBarCodeColor(System.Drawing.Color.Navy);
qrCode.AddBarcodeValueTextBelowBarcode();

// Save as image
qrCode.SaveAsPng("quickstart-qr.png");

// Export for API
byte[] pngBytes = qrCode.ToPngBinaryData();

IronBarcodeは、AWS LambdaAzureDocker 、および.NET MAUIを介したモバイルプラットフォームへのデプロイをサポートしています。 技術サポートが必要な場合は、エンジニアリングリクエストを送信してください。 Enterpriseセキュリティ要件を満たすために、セキュリティ関連のCVE開示情報を確認してください。

バーコード読み取り機能について詳しく調べて、 Code 39バーコードやその他の特殊なフォーマットの読み取りサポートなど、バーコード認識の全機能を理解しましょう。 このライブラリは豊富な機能を備えているため、信頼性の高いバーコード生成およびスキャン機能を必要とするEnterpriseアプリケーションに適しています。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、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

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。