IRONSOFTWAREHOME

IronOCRを使ってC#で読み取り結果を抽出する方法

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

IronOCRのOcrResultオブジェクトを返します。

OCRの結果には、検出された段落、行、単語、個々の文字に関する包括的な情報が含まれています。

各要素に対して、テキストコンテンツ、正確なXおよびY座標、寸法(幅と高さ)、テキスト方向(左から右、または上から下)、CropRectangleオブジェクト内の位置が提供されます。

クイックスタート: 最初に検出された単語から単語のテキストを取得

Wordsコレクションを使用して最初の単語のテキストを抽出します。

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

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

    string wordText = new IronTesseract().Read("file.jpg").Words[0].Text;
    C#
  3. 3実際の環境でテストするためにデプロイする

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

OCR結果からどのようなデータを抽出できますか?

翻訳結果には抽出されたテキストだけでなく、IronOCRによってPDFや画像ドキュメントから発見されたページ、段落、行、単語、文字、バーコードの情報も含まれます。 この情報は、Readメソッドを使用して返されるOcrResultオブジェクトからアクセスできます。

IronOCRの包括的な結果システムは、強力なTesseract 5エンジンをベースに構築されており、単純なテキスト認識以上の構造化データ抽出機能を開発者に提供します。 スキャンドキュメント写真スクリーンショットのいずれを処理する場合でも、OcrResultクラスを通じて抽出データを微細に制御できます。

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;

// Output information to console
Console.WriteLine($"Text: {paragraphs[0].Text}");
Console.WriteLine($"X: {paragraphs[0].X}");
Console.WriteLine($"Y: {paragraphs[0].Y}");
Console.WriteLine($"Width: {paragraphs[0].Width}");
Console.WriteLine($"Height: {paragraphs[0].Height}");
Console.WriteLine($"Text direction: {paragraphs[0].TextDirection}");
日本語のビジネス文書から座標とテキストを含むOCR抽出結果を示すVisual Studioデバッガ

OCR結果からテキスト コンテンツにアクセスするには?

OcrResultオブジェクトは抽出されたテキストをシンプルで直感的な方法で提示し、開発者が直接使用したり、他のアプリケーションコンポーネントに統合することができます。 階層構造は、自然なドキュメントのテキスト構成を反映しており、異なる粒度レベルのコンテンツを簡単に扱うことができます。

多言語サポートを必要とするアプリケーションのために、IronOCRは多言語ドキュメントをシームレスに処理し、すべての125のサポート言語で同じ構造化された結果フォーマットを維持します。

次のコード例は、結果を確認するためにループでテキストを表示します。

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Add image
using var imageInput = new OcrImageInput("sampleText.png");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;

// Loop through each paragraph in the array
Console.WriteLine("--- All Detected Paragraphs ---");
foreach (Paragraph paragraph in paragraphs)
{
    // Print the text of the current paragraph
    Console.WriteLine(paragraph.Text);

    // Add a blank line for better separation (optional)
    Console.WriteLine();
}

出力

孫正義と重田康光に関するテキストを抽出したOCR段落検出結果を表示するターミナル

コンソール出力はIronOCRが段落テキストを一行ずつ正確に抽出していることを示しています。 このエンジンは段落境界を自動的に検出するため、複数のテキストブロックがある複雑な文書の処理に最適です。

検出されたテキストの位置座標を取得するにはどうすればよいですか?

抽出されたテキストに加えて、OcrResultは詳細な位置データを提供します。 この空間情報は、レイアウトの忠実度を維持したり、特定のドキュメント領域から的を絞ったテキスト抽出を行う必要があるアプリケーションにとって非常に重要です。 座標系は、ページの左上隅からの標準ピクセル寸法を使用します。

座標ベースの操作の精度を高めるには、OCR リージョン ターゲティングを使用して特定の領域に焦点を当てたり、Computer Vision 機能を活用してテキスト領域を自動的に識別したりすることを検討してください。

次のコードは、各段落を繰り返し処理し、その座標(XとY)をコンソールに表示することを示します。

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Add image
using var imageInput = new OcrImageInput("sampleText.png");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;

Console.WriteLine("--- All Detected Coordinates of Paragraphs ---");

// Use a 'for' loop to get an index for each paragraph
for (int i = 0; i < paragraphs.Length; i++)
{
    // Get the current paragraph
    Paragraph paragraph = paragraphs[i];

    // Print the paragraph number, text, and its location
    Console.WriteLine($"X: {paragraph.X}"); // X-coordinate (left edge)
    Console.WriteLine($"Y: {paragraph.Y}"); // Y-coordinate (top edge)

    // Add a blank line for better separation
    Console.WriteLine();
}

出力

OCRで検出された段落座標をX,Y値で示す端末出力:(29,30)、(28,74)、(27,362)

出力は、3つの段落に対応する3組の座標を示しています。これらの座標は、バウンディングボックスの描画、特定領域の抽出、テキスト要素間の空間的関係の維持に使用できます。

OCRの結果には他にどのような属性がありますか?

IronOCRはテキストとテキスト座標に加えて、追加情報を提供します。 各テキスト要素(段落、行、単語、個々の文字)について、以下の情報があります:

  • テキスト: 文字列としての実際のテキスト。
  • X: ページの左端からの位置(ピクセル単位)。
  • Y: ページの上端からの位置(ピクセル単位)。
  • 幅: ピクセル単位での幅。
  • 高さ: ピクセル単位での高さ。
  • **テキストの方向:**テキストが読まれる方向(左から右、または上から下)。
  • 位置: このテキストがページ上のどこにあるかをピクセル単位で示す矩形。

これらの属性は、実装時に特に役立ちます:

  • テキストハイライトと注釈システム
  • フォームフィールドの自動検出
  • 文書変換におけるレイアウト保持
  • データ抽出のための空間テキスト分析

デバッグと視覚化のために、ハイライトテキスト機能を使用して、検出された領域の精度を視覚的に確認してください。

段落、行、単語、文字はどのように比較されますか?

IronOCRの階層的なテキスト構造により、開発者は特定のユースケースに適した詳細レベルで作業することができます。 これらの要素の違いを理解することは、アプリケーションに適した粒度を選択するのに役立ちます。

以下は、検出された段落、行、単語、文字の比較です。

日本のハイテク企業家、孫正義と重田康光の経歴をハイライトで紹介。
日本のハイテク企業幹部である孫正義氏と重田康光氏のプロフィールを赤字で強調した文書
技術投資に関する段落で、選択した単語に赤いボックスが重なるテキストハイライト機能
OCR結果の個々の文字の境界を示す文字レベルのテキスト検出

それぞれの粒度レベルには異なる目的があります:

  • 段落: 文書構造分析とテキスト一括抽出に最適です。
  • :読み順を維持し、表形式のデータを処理するのに便利です。
  • 単語: 検索機能とテキスト分析に最適です。
  • 文字:スペルチェックや精密なテキスト編集アプリケーションに最適です。

IronOCRはバーコードやQRコードを読み取れますか?

はい、IronOCRはバーコードとQRコードを読むことができます。 この機能はIronBarcodeほど強力ではないかもしれませんが、IronOCRは一般的なバーコードタイプをサポートしています。バーコード検出を有効にするには、Configuration.ReadBarCodesプロパティをtrueに設定してください。 この統合された機能により、IronOCRはインボイス、出荷ラベル、製品カタログのようなテキストとBarCodeの両方を含む文書の処理に最適です。

さらに、検出されたバーコードからフォーマット、値、座標(x, y)、高さ、幅、およびIronSoftware.Drawing.Rectangleオブジェクトとしての位置といった貴重な情報を抽出できます。 IronDrawingのこのRectangleクラスを使用すると、ドキュメント上で正確な配置が可能になります。

より高度な BarCode 読み取りシナリオについては、ドキュメントの包括的なバーコード読み取り例をご覧ください。

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Enable barcodes detection
ocrTesseract.Configuration.ReadBarCodes = true;

// Add image
using OcrInput ocrInput = new OcrInput();
ocrInput.LoadPdf("sample.pdf");

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

// Output information to console
foreach(var barcode in ocrResult.Barcodes)
{
    Console.WriteLine("Format = " + barcode.Format);
    Console.WriteLine("Value = " + barcode.Value);
    Console.WriteLine("X = " + barcode.X);
    Console.WriteLine("Y = " + barcode.Y);
}
Console.WriteLine(ocrResult.Text);

バーコード検出の出力はどのように見えますか?

IronOCRのバーコード検出機能は、テキスト抽出とシームレスに統合され、テキストコンテンツとバーコードデータの両方を含む統一された結果を提供します。 この2つの機能は、両方の情報タイプの抽出と相関が必要な自動文書処理ワークフローにとって価値があります。

QRコードとEAN8バーコードの検出結果をフォーマット、値、座標とともに示すデバッグコンソール

出力は、IronOCRが複数のバーコードタイプを同時に検出し、フォーマット識別(QRCodeやEAN8など)、デコードされた値、検出された各コードの正確な座標情報を提供する能力を示しています。 この包括的なデータにより、開発者は、さまざまな種類のコンテンツを効率的に処理する高度な文書処理アプリケーションを構築することができます。

よくある質問

OcrResultオブジェクトにはどのような情報が含まれていますか?

IronOCRのOcrResultオブジェクトには、抽出されたテキストに加えて、正確なX/Y座標、寸法(幅と高さ)、テキストの方向(左から右または上から下)、検出された各要素の段落、行、単語、個々の文字として整理された階層構造などの詳細なメタデータが含まれています。

OCR結果から最初の単語をすばやく抽出する方法を教えてください。

IronOCRのReadメソッドを使い、Wordsコレクションにアクセスすることで最初の単語のテキストを抽出することができます: `string wordText = new IronTesseract().Read("file.jpg").Words[0].Text;`.これにより、OCR結果から個々の単語要素に即座にアクセスできるようになります。

OCRの結果にはどのような座標データがありますか?

IronOCRは検出された各要素(段落、行、単語、文字)の正確なX、Y座標と幅、高さ寸法を提供します。この座標データはCropRectangleオブジェクトを通してアクセスでき、テキスト要素の正確な位置追跡を可能にします。

テキストコンテンツ以外のメタデータを抽出できますか。

IronOCRは、PDFやイメージ・ドキュメントから発見されたページ、段落、行、単語、文字、バーコードまでも含む包括的なメタデータを抽出します。OcrResultオブジェクトは、各要素のテキスト方向、階層構造、空間情報へのアクセスを提供します。

OCR結果を得るために処理できる文書の種類は?

IronOCRはスキャン文書、写真、スクリーンショット、PDF、画像ファイルなど様々な種類の文書を処理することができます。Readメソッドはこれらのフォーマットで一貫して動作し、完全なメタデータを持つ同じ構造のOcrResultオブジェクトを返します。

抽出されたテキストはどのように整理されますか?

IronOCRは抽出されたテキストを自然な文書構成を反映した階層構造で整理します。OcrResultオブジェクトは、ページ全体から個々の文字まで、さまざまな粒度レベルでコンテンツを表示するため、アプリケーションに適したレベルでテキストを簡単に扱うことができます。

Can IronOCR read barcodes and QR codes?

Yes, IronOCR can read common barcode types, including QR codes, by enabling barcode detection in the configuration. This integration allows for comprehensive processing of documents containing both text and barcodes.

How does IronOCR help with hierarchical text analysis?

IronOCR's hierarchical text structure allows developers to work at different granularity levels, such as paragraphs, lines, words, and characters, making it suitable for various applications like document structure analysis and text search functionality.

What advanced features does IronOCR offer for coordinate-based operations?

IronOCR offers OCR region targeting for focused text extraction and Computer Vision capabilities to automatically identify text regions, enhancing precision in coordinate-based applications.

What does the barcode detection output look like in IronOCR?

The barcode detection output in IronOCR includes format identification, decoded values, and precise coordinates, seamlessly integrated with text extraction for efficient processing of mixed content documents.

Curtis Chau
テクニカルライター

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

...
詳しく読む

準備はできましたか?

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

あなたの無料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日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。