IRONSOFTWAREHOME

IronOCRを使ってC#でBarCodeとQRコードを読み取る方法

Curtis Chau
Curtis Chau
Updated: 2026年6月4日

IronOCRは、C#でReadBarCodes = trueを設定することでバーコードおよびQRコードを読み取ります。 QRコード、Code 128、Data Matrixを含む20以上のバーコード形式をサポートしています。

クイックスタート: PDFから即座にバーコードを読み取る

1つの設定でBarCode検出を有効にし、IronOCRでPDFをスキャンしてください。 以下のコードは、BarCode読み取りをオンにし、PDFを処理し、デコードされた値を取得する方法を示しています。

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2このコード スニペットをコピーして実行します。

    var result = new IronOcr.IronTesseract() { Configuration = new IronOcr.TesseractConfiguration { ReadBarCodes = true } }.Read(new IronOcr.OcrPdfInput("document.pdf"));
    foreach(var bc in result.Barcodes) Console.WriteLine(bc.Value);
    C#
  3. 3実際の環境でテストするためにデプロイする

    今日プロジェクトで IronOCR を使い始めましょう無料トライアル
    arrow pointer

どのように PDF ドキュメントから BarCode を読み取りますか?

IronTesseractオブジェクトを作成して読み取りを実行します。 ReadBarCodes プロパティをtrueに設定して、バーコード検出を有効にします。 PDFドキュメントをOcrPdfInputコンストラクタを使用してインポートします。 インポートされたPDFにOCRを実行するためにReadメソッドを使用します。

以下は、このPDF文書を使用した例です:

using IronOcr;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Enable barcode reading
ocrTesseract.Configuration.ReadBarCodes = true;

// Add PDF
using var imageInput = new OcrPdfInput("pdfWithBarcodes.pdf");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Output detected barcodes and text values
Console.WriteLine("Extracted text:");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("Extracted barcodes:");
foreach (var barcode in ocrResult.Barcodes)
{
    Console.WriteLine(barcode.Value);
}
IronOCRのデバッグ出力はPDFからテキストと3つのバーコード(A,B,C)を抽出したものです。

複数の BarCode 値がバーコードの下に表示され、抽出されたテキストに含まれます。

なぜIronOCRはテキストとBarCodeの両方の値を抽出するのですか?

IronOCRの二重抽出は包括的な文書分析を提供します。 テキストとバーコードの両方を含むドキュメントを処理する場合、ライブラリは standard OCR text extraction を実行し、同時にバーコード シンボロジーをデコードします。 この統一されたアプローチにより、複数の処理パスや個別のライブラリが不要になります。

テキスト抽出は人間が読める要素をキャプチャし、BarCode検出は機械が読めるデータを識別してデコードします。 これは、バーコードの値が印刷されたテキストと関連する請求書、出荷ラベル、在庫報告書などの文書に役立ちます。 OcrResultクラス はこれらの出力を分離し、テキストにはBarcodesコレクションを通じてアクセスできます。

どのような BarCode フォーマットがサポートされていますか?

IronOCRは20以上のバーコード形式をサポートしています:

1次元BarCode:

  • コード128、コード39、コード93
  • EAN-13、EAN-8
  • UPC-A、UPC-E
  • コードバー
  • ITF(インターリーブ2/5)
  • 三井住友海上
  • プレッシー

2Dバーコード:

  • QRコード
  • データマトリックス
  • PDF417
  • アステカコード
  • MaxiCode

MICR小切手の読み取りアイデンティティ文書の処理のような特殊なアプリケーションでは、IronOCRのバーコード機能がテキスト抽出機能を補完します。

バーコード読み取り専用ライブラリの代わりに OCR を使用すべきなのはどのような場合ですか?

IronOCRの統合バーコード読み取りをお選びください:

1.混合コンテンツ処理:テキストとBarCodeの両方を含む文書(出荷ラベル、請求書、またはスキャンされた文書)。 2.単一ライブラリ優先:依存関係を最小限に抑え、1つのソリューションを使用したい。 3.PDF処理: あなたはすでにPDFのOCRテキスト抽出にIronOCRを使用しています。 4.複雑なドキュメントレイアウト:文書には、テキスト領域やテーブル内にバーコードが埋め込まれています。

以下の場合は、専用の BarCode ライブラリを使用してください:

  • バーコードのみの大量画像の処理
  • リアルタイムの BarCode スキャンが必要(応答時間 50ms 未満)
  • 特殊なアルゴリズムを必要とする、破損したバーコードや低品質のバーコードの処理
  • カメラの最適化によるモバイルバーコードスキャニングの実装

文書から QR コードを読み取るにはどうすればよいですか?

バーコード読み取りと同様に、ReadBarCodesプロパティをtrueに設定します。 ファイルパス以外のコード変更は必要ありません。 このPDF文書をQRコードで処理します:

using IronOcr;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Enable barcode reading
ocrTesseract.Configuration.ReadBarCodes = true;

// Add PDF
using var imageInput = new OcrPdfInput("pdfWithQrCodes.pdf");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Output detected barcodes and text values
Console.WriteLine("Extracted text:");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("Extracted barcodes:");
foreach (var barcode in ocrResult.Barcodes)
{
    Console.WriteLine(barcode.Value);
}
ドキュメントから抽出されたテキストとデコードに成功したQRコードA、B、Cを示すVisual StudioのIronOCR出力

なぜ同じ設定が BarCode と QR コードの両方で機能するのですか?

IronOCRの統一バーコード検出エンジンは、すべての機械読み取り可能なコードを同等に扱います。 ReadBarCodes設定は、包括的なシンボロジーデテクターをアクティブにし、フォーマット固有の設定を必要とせずに1D(線形バーコード)および2D(QRコード、Data Matrix)形式の両方を認識します。 このデザインは、実装を簡素化し、構成の複雑さを軽減します。

検出アルゴリズムは自動的に

  • パターン認識に基づいてシンボルタイプを識別
  • 適切なデコードアルゴリズムを適用
  • 方向とサイズのバリエーションに対応
  • バーコードの種類に関係なく、一貫した形式で結果を返します。

このアプローチは、コンピュータ ビジョン モデルが、普遍的な検出機能を提供するために複数のフォーマットでトレーニングする方法を反映しています。

OCRでQRコードを読み取るときによくある問題とは

QRコードを処理する際の一般的な課題には、次のようなものがあります:

1.解決課題:PDF の QR コードは、最小モジュール サイズ以下にダウンサンプリングされることがあります。DPI 設定を使用して、適切な解像度を確保してください (300 DPI 以上を推奨)。

2.画質:スキャンされたQRコードは、ぼやけやノイズ、歪みに悩まされることがよくあります。 画像補正フィルターを適用して、明瞭度を高めます:

// Apply filters to improve QR code readability
ocrTesseract.Configuration.ReadBarCodes = true;
var input = new OcrImageInput("qr-code-scan.jpg");
input.DeNoise();
input.Sharpen();
input.EnhanceResolution();

var result = ocrTesseract.Read(input);

3.向きの問題:角度のあるQRコードは正しくデコードできないことがあります。 ページ回転検出を有効にして、ずれたドキュメントを処理します。

4.混在コンテンツの干渉:QRコードに重なるテキストやグラフィックは、検出を妨げる可能性があります。 必要に応じて、切り抜き領域を使用してQRコード領域を切り分けます。

QRコードの認識精度を高めるにはどうすればよいですか?

これらのテクニックを使用してQRコード認識を最適化します:

1.画像の前処理フィルターウィザードを使用して、最適なエンハンスメント設定を決定します:

// Enhanced QR code reading with preprocessing
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;

// Configure for better QR detection
var input = new OcrImageInput("document-with-qr.pdf");
input.TargetDPI = 300; // Ensure sufficient resolution
input.Binarize(); // Convert to black and white
input.DeNoise(); // Remove image artifacts

var result = ocrTesseract.Read(input);

2.複数のページを扱う複数ページにまたがるQRコードのある文書の場合:

// Process multi-page documents efficiently
using var pdfInput = new OcrPdfInput("multi-page-qr-document.pdf");
pdfInput.TargetDPI = 300;

var results = ocrTesseract.Read(pdfInput);
foreach (var page in results.Pages)
{
    Console.WriteLine($"Page {page.PageNumber}:");
    foreach (var barcode in page.Barcodes)
    {
        Console.WriteLine($"  QR Code: {barcode.Value}");
        Console.WriteLine($"  Location: X={barcode.X}, Y={barcode.Y}");
    }
}

3.非同期処理:複数のドキュメントでより良いパフォーマンスを得るには、非同期メソッドを使用してください:

// Asynchronous QR code reading
var result = await ocrTesseract.ReadAsync(imageInput);

4.デバッグ認識の問題: 結果のハイライトを有効にして、IronOCRが何を検出したかを視覚化してください:

result.SaveAsHighlightedImage("qr-detection-debug.png");

大規模 BarCode 処理のパフォーマンス最適化

BarCode や QR コードを含む数千のドキュメントを処理する場合は、以下の最適化戦略を実行します:

1.マルチスレッドマルチスレッド処理を活用して、複数のドキュメントを同時に処理します:

// Process multiple documents in parallel
var documents = new[] { "doc1.pdf", "doc2.pdf", "doc3.pdf" };
var results = documents.AsParallel().Select(doc =>
{
    var tesseract = new IronTesseract();
    tesseract.Configuration.ReadBarCodes = true;
    return tesseract.Read(new OcrPdfInput(doc));
}).ToList();

2.メモリ管理abort tokens を長時間実行する操作に使用してください:

// Implement cancellation for large batch processing
using var cts = new CancellationTokenSource();
ocrTesseract.Configuration.CancellationToken = cts.Token;

// Cancel if processing takes too long
cts.CancelAfter(TimeSpan.FromMinutes(5));

3.結果のエクスポート:結果を検索可能なPDFとして保存し、テキストとBarCodeデータの両方を維持します:

// Export results with embedded barcode values
result.SaveAsSearchablePdf("output-with-barcodes.pdf");

ビジネス アプリケーションとの統合

IronOCRのバーコード機能は、既存 for .NETアプリケーションとシームレスに統合されます。 一般的な統合シナリオは以下のとおりです:

  • 在庫管理:出荷明細から製品コードを抽出する
  • ドキュメントアーカイブ:埋め込まれたバーコード識別子によってスキャンされたドキュメントをインデックス化する。
  • 請求書処理財務ドキュメントで、BarCode SKU を行項目に一致させる。
  • 医療記録:医療フォームと一緒に患者のリストバンドバーコードを処理する。

大量の BarCode や QR コードを処理するプロダクション アプリケーションでは、処理状況の追跡を実装して、処理状況を監視し、実際の測定基準に基づいてパフォーマンスを最適化することを検討してください。

よくある質問

C#アプリケーションでBarCode読み取りを有効にするにはどうすればよいですか?

IronOCRでは、TesseractConfigurationでReadBarCodes = trueを設定することでバーコードの読み取りを有効にします。この設定一つで、通常のテキスト認識と並行してPDFや画像からのバーコード値の自動抽出が有効になり、20以上のバーコードフォーマットをサポートします。

同じ文書からテキストと BarCode の両方を読み取ることはできますか?

そうです、IronOCRは二重抽出を行います - 標準的なOCRによって人間が読めるテキストを取り込み、同時に機械が読めるバーコードをデコードします。OcrResultクラスはこれらの出力を分離し、テキストはTextプロパティから、バーコードデータはBarCodesコレクションからアクセスできるようになっています。

検出できるバーコード形式は?

IronOCRは、1次元バーコード(Code 128, Code 39, Code 93, EAN-13, EAN-8, UPC-A, UPC-E, Codabar, ITF, MSI, Plessey)と2次元バーコード(QR Code, Data Matrix, and more)を含む20以上のバーコードフォーマットをサポートしています。

PDF文書からBarCodeを抽出する方法を教えてください。

IronTesseractオブジェクトを作成し、ReadBarCodesをtrueに設定し、OcrPdfInputコンストラクタを使ってPDFをインポートし、Readメソッドを使用します。IronOcrはOCRを実行し、検出されたすべてのバーコードの値を抽出します。

テキストOCRとバーコード読み取りには、別々のライブラリが必要ですか?

IronOCRの統一されたアプローチは、複数の処理パスや別々のライブラリを必要としません。IronOCRは標準的なOCRテキスト抽出を行い、同時にバーコードのデコードを一度に行います。

How can I improve the accuracy of QR code recognition with IronOCR?

Improve QR code recognition by ensuring high resolution, applying image corrections like de-noising and sharpening, and handling orientation issues.

What are common challenges when reading QR codes with OCR?

Common challenges include resolution issues, image quality problems, orientation errors, and interference from overlapping text or graphics.

Can IronOCR handle multi-page PDF documents with barcodes?

Yes, IronOCR can process multi-page PDF documents with barcodes by reading each page individually and outputting detected barcode values and formats.

What is the benefit of using IronOCR for PDF text extraction and barcode reading?

Using IronOCR allows for unified text and barcode extraction from PDF documents, reducing the need for separate libraries and processing steps for each type of data.

How can IronOCR's barcode capabilities integrate into business applications?

IronOCR can be used in various business applications such as inventory management, document archiving, invoice processing, and healthcare records by extracting and processing barcode information.

Curtis Chau
テクニカルライター

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

...
詳しく読む

準備はできましたか?

Nuget Downloads 6,236,385バージョン:2026.9リリースされたばかり

無料をゲット

30日間の試用キーをすぐに取得。

bullet_checkedクレジットカードやアカウントの作成は不要です。
bullet_test製品版でのテスト
透かしなし
bullet_calendar30日間
完全機能の製品
bullet_support試用期間中の
24/5テクニカルサポート
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. 「参照」を選択して「IronOCR」を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

または、Windowsインストーラーをこちらからダウンロード。

  1. IronOCRをダウンロードして、ソリューションディレクトリ内の~/Libsなどの場所に解凍します
  2. Visual Studioソリューションエクスプローラーで、リファレンスを右クリックします。「参照」、「IronOCR.dll」を選択

$999からのライセンス

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