ウォーターマークなしで本番環境でテスト。
必要な場所で動作します。
完全に機能する製品を30日間利用できます。
数分でセットアップして稼働します。
製品試用期間中、サポートエンジニアリングチームへのフルアクセス
using IronOcr;
string imageText = new IronTesseract().Read(@"images\image.png").Text;Install-Package IronOcr
IronOCRは、不完全なスキャン画像やPDF文書からテキストを自動的に検出して読み取るというユニークな機能を備えています。 IronTesseractクラスは最もシンプルな API を提供します。
C# OCR 操作をきめ細かく制御するには、他のコード サンプルを試してください。
IronOCRは、Tesseractの最も先進的なビルドを、速度、精度、ネイティブDLLとAPIを向上させ、あらゆるプラットフォームで提供します。
.NET Framework、Standard、Core、Xamarin、MonoのTesseract 3、Tesseract 4、Tesseract 5をサポート。
IronTesseractインスタンス化するReadメソッドを使用してOCRを実行するTextプロパティにアクセスしてOCR結果を取得するusing IronOcr;
using System;
var ocrTesseract = new IronTesseract();
ocrTesseract.Language = OcrLanguage.Arabic;
using (var ocrInput = new OcrInput())
{
ocrInput.LoadImage(@"images\arabic.gif");
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
// Example with a Custom Trained Font Being used:
var ocrTesseractCustomerLang = new IronTesseract();
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata");
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest);
using (var ocrInput = new OcrInput())
{
ocrInput.LoadPdf(@"images\mixed-lang.pdf");
var ocrResult = ocrTesseractCustomerLang.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}Install-Package IronOcr
IronOCR は 125 の国際言語をサポートしています。 デフォルトでインストールされる英語以外に、追加の言語パックを NuGet 経由で .NET プロジェクトに追加したり、言語ページからダウンロードしたりすることもできます。 ほとんどの言語は、高速、標準 (推奨)、最高の品質で利用できます。 最高品質オプションを選択すると、より正確な結果が得られますが、処理時間も遅くなります。IronOCR 言語サポート
using IronOcr;
using IronSoftware.Drawing;
// We can delve deep into OCR results as an object model of
// Pages, Barcodes, Paragraphs, Lines, Words and Characters
// This allows us to explore, export and draw OCR content using other APIs/
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
using var ocrInput = new OcrInput();
var pages = new int[] { 1, 2 };
ocrInput.LoadImageFrames("example.tiff", pages);
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
foreach (var page in ocrResult.Pages)
{
// Page object
int PageNumber = page.PageNumber;
string PageText = page.Text;
int PageWordCount = page.WordCount;
// null if we dont set Ocr.Configuration.ReadBarCodes = true;
OcrResult.Barcode[] Barcodes = page.Barcodes;
AnyBitmap PageImage = page.ToBitmap(ocrInput);
double PageWidth = page.Width;
double PageHeight = page.Height;
double PageRotation = page.Rotation; // angular correction in degrees from OcrInput.Deskew()
foreach (var paragraph in page.Paragraphs)
{
// Pages -> Paragraphs
int ParagraphNumber = paragraph.ParagraphNumber;
string ParagraphText = paragraph.Text;
AnyBitmap ParagraphImage = paragraph.ToBitmap(ocrInput);
int ParagraphX_location = paragraph.X;
int ParagraphY_location = paragraph.Y;
int ParagraphWidth = paragraph.Width;
int ParagraphHeight = paragraph.Height;
double ParagraphOcrAccuracy = paragraph.Confidence;
OcrResult.TextFlow paragrapthText_direction = paragraph.TextDirection;
foreach (var line in paragraph.Lines)
{
// Pages -> Paragraphs -> Lines
int LineNumber = line.LineNumber;
string LineText = line.Text;
AnyBitmap LineImage = line.ToBitmap(ocrInput);
int LineX_location = line.X;
int LineY_location = line.Y;
int LineWidth = line.Width;
int LineHeight = line.Height;
double LineOcrAccuracy = line.Confidence;
double LineSkew = line.BaselineAngle;
double LineOffset = line.BaselineOffset;
foreach (var word in line.Words)
{
// Pages -> Paragraphs -> Lines -> Words
int WordNumber = word.WordNumber;
string WordText = word.Text;
AnyBitmap WordImage = word.ToBitmap(ocrInput);
int WordX_location = word.X;
int WordY_location = word.Y;
int WordWidth = word.Width;
int WordHeight = word.Height;
double WordOcrAccuracy = word.Confidence;
foreach (var character in word.Characters)
{
// Pages -> Paragraphs -> Lines -> Words -> Characters
int CharacterNumber = character.CharacterNumber;
string CharacterText = character.Text;
AnyBitmap CharacterImage = character.ToBitmap(ocrInput);
int CharacterX_location = character.X;
int CharacterY_location = character.Y;
int CharacterWidth = character.Width;
int CharacterHeight = character.Height;
double CharacterOcrAccuracy = character.Confidence;
// Output alternative symbols choices and their probability.
// Very useful for spellchecking
OcrResult.Choice[] Choices = character.Choices;
}
}
}
}
}Install-Package IronOcr
IronOCR は、Tesseract 5 を使用してスキャンしたページごとに高度な結果オブジェクトを返します。 これには、位置データ、画像、テキスト、統計的信頼性、代替シンボルの選択肢、フォント名、フォント サイズの装飾、フォントの太さ、それぞれの位置が含まれます。
バーコード
製品またはライセンスに関するお問い合わせについて、Ironチームは皆様をサポートする準備が整っています。質問があればお送りください。Ironの適切な担当者が回答します。
お問い合わせ一つまたは複数のページを IronOCR に送ることができます。すべてのテキスト、バーコード、および QR コンテンツを結果として受け取ります。OCR 機能を .NET コンソール、Web、デスクトップアプリに追加します。画像は PDF、JPG、PNG、GIF、BMP、TIFF として送信できます。
チュートリアルを参照してください
光学式文字認識ソフトウェアは、正確なテキスト OCR のために多くのフォントスタイルのコンテンツを視認します。四角形の読み取り領域を使用して速度と精度を向上させ、マルチコアマルチスレッドが OCR 読み取り速度を向上させます。
API リファレンスドキュメントIronOCRの特徴となっているのは、酷くスキャンされた文書を読む能力です。そのユニークな前処理ライブラリは、背景雑音、回転、歪みを減少させ、スキューされた位置合わせを修正すると共に、色を単純化し、解像度とコントラストを向上させます。IronのAutoOCRおよびAdvanced OCR設定により、開発者は常に可能な限り最高の結果を達成するためのツールを提供します。
さらに詳しく知る
以下の言語パックが利用可能です:アラビア語、簡体字中国語、繁体字中国語、デンマーク語、英語、フィンランド語、フランス語、ドイツ語、ヘブライ語、イタリア語、日本語、韓国語、ポルトガル語、ロシア語、スペイン語、スウェーデン語。その他の言語はリクエストにより対応可能です。
さらに詳しく知るIronOCRはコンテンツをプレーンテキストとバーコードデータとして出力します。代わりの構造化データオブジェクトモデルにより、開発者は.NETアプリケーションに直接入力するためのすべてのコンテンツを、構造化された見出し、段落、行、単語、文字の形式で受け取ることができます。
さらに詳しく知る





C# Tesseract PDFライセンス

JimはIronOCRの開発において中心的な人物であり、OCRのための画像処理アルゴリズムと読み取り方法を設計し、構築しています。
JimのTesseract比較を見る
C# PDFライセンス ASP.NET

画像からテキストを読むためにIronOCRを使用するGemmaのチームの方法を学びましょう。Gemmaは自身のコードサンプルを共有しています。
Gemmaのイメージからテキストへのチュートリアルを見る


Ironのチームは、.NETソフトウェアコンポーネント市場で10年以上の経験があります。