ウォーターマークなしで本番環境でテスト。
必要な場所で動作します。
完全に機能する製品を30日間利用できます。
数分でセットアップして稼働します。
製品試用期間中、サポートエンジニアリングチームへのフルアクセス
using IronOcr;
string imageText = new IronTesseract().Read(@"images\image.png").Text;Imports IronOcr
Private imageText As String = (New IronTesseract()).Read("images\image.png").TextInstall-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);
}Imports IronOcr
Imports System
Private ocrTesseract = New IronTesseract()
ocrTesseract.Language = OcrLanguage.Arabic
Using ocrInput As New OcrInput()
ocrInput.LoadImage("images\arabic.gif")
Dim ocrResult = ocrTesseract.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End Using
' Example with a Custom Trained Font Being used:
Dim ocrTesseractCustomerLang = New IronTesseract()
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata")
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest)
Using ocrInput As New OcrInput()
ocrInput.LoadPdf("images\mixed-lang.pdf")
Dim ocrResult = ocrTesseractCustomerLang.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End UsingInstall-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;
}
}
}
}
}Imports IronOcr
Imports 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/
Private ocrTesseract = New IronTesseract()
ocrTesseract.Configuration.ReadBarCodes = True
Dim ocrInput As New OcrInput()
Dim pages = New Integer() { 1, 2 }
ocrInput.LoadImageFrames("example.tiff", pages)
Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
For Each page In ocrResult.Pages
' Page object
Dim PageNumber As Integer = page.PageNumber
Dim PageText As String = page.Text
Dim PageWordCount As Integer = page.WordCount
' null if we dont set Ocr.Configuration.ReadBarCodes = true;
Dim Barcodes() As OcrResult.Barcode = page.Barcodes
Dim PageImage As AnyBitmap = page.ToBitmap(ocrInput)
Dim PageWidth As Double = page.Width
Dim PageHeight As Double = page.Height
Dim PageRotation As Double = page.Rotation ' angular correction in degrees from OcrInput.Deskew()
For Each paragraph In page.Paragraphs
' Pages -> Paragraphs
Dim ParagraphNumber As Integer = paragraph.ParagraphNumber
Dim ParagraphText As String = paragraph.Text
Dim ParagraphImage As AnyBitmap = paragraph.ToBitmap(ocrInput)
Dim ParagraphX_location As Integer = paragraph.X
Dim ParagraphY_location As Integer = paragraph.Y
Dim ParagraphWidth As Integer = paragraph.Width
Dim ParagraphHeight As Integer = paragraph.Height
Dim ParagraphOcrAccuracy As Double = paragraph.Confidence
Dim paragrapthText_direction As OcrResult.TextFlow = paragraph.TextDirection
For Each line In paragraph.Lines
' Pages -> Paragraphs -> Lines
Dim LineNumber As Integer = line.LineNumber
Dim LineText As String = line.Text
Dim LineImage As AnyBitmap = line.ToBitmap(ocrInput)
Dim LineX_location As Integer = line.X
Dim LineY_location As Integer = line.Y
Dim LineWidth As Integer = line.Width
Dim LineHeight As Integer = line.Height
Dim LineOcrAccuracy As Double = line.Confidence
Dim LineSkew As Double = line.BaselineAngle
Dim LineOffset As Double = line.BaselineOffset
For Each word In line.Words
' Pages -> Paragraphs -> Lines -> Words
Dim WordNumber As Integer = word.WordNumber
Dim WordText As String = word.Text
Dim WordImage As AnyBitmap = word.ToBitmap(ocrInput)
Dim WordX_location As Integer = word.X
Dim WordY_location As Integer = word.Y
Dim WordWidth As Integer = word.Width
Dim WordHeight As Integer = word.Height
Dim WordOcrAccuracy As Double = word.Confidence
For Each character In word.Characters
' Pages -> Paragraphs -> Lines -> Words -> Characters
Dim CharacterNumber As Integer = character.CharacterNumber
Dim CharacterText As String = character.Text
Dim CharacterImage As AnyBitmap = character.ToBitmap(ocrInput)
Dim CharacterX_location As Integer = character.X
Dim CharacterY_location As Integer = character.Y
Dim CharacterWidth As Integer = character.Width
Dim CharacterHeight As Integer = character.Height
Dim CharacterOcrAccuracy As Double = character.Confidence
' Output alternative symbols choices and their probability.
' Very useful for spellchecking
Dim Choices() As OcrResult.Choice = character.Choices
Next character
Next word
Next line
Next paragraph
Next pageInstall-Package IronOcr
IronOCR は、Tesseract 5 を使用してスキャンしたページごとに高度な結果オブジェクトを返します。 これには、位置データ、画像、テキスト、統計的信頼性、代替シンボルの選択肢、フォント名、フォント サイズの装飾、フォントの太さ、それぞれの位置が含まれます。
バーコード
製品、統合、またはライセンスの問い合わせであろうと、Ironの製品開発チームはすべての質問に対応します。Ironと対話を始め、このライブラリをプロジェクトで最大限に活用してください。
質問をするIronOCR (光学文字認識) ライブラリは、開発者が画像をテキストに変換する際に迅速かつ効率的な結果を提供します。IronOCR は .NET、VB .NET、C# に対応しています。私たちの最高の .NET アプリケーションは、開発者であるあなたをサポートし、プロジェクトの最適なパフォーマンスを達成するために特別に設計されています。
OCR はテキストファイル、バーコード、QR コンテンツなどを受け取り認識します。しかし、IronOCR はさらに、OCR 読み取りと画像からテキストの追加を可能にする多数の手法を提供しており、ウェブ、Windows デスクトップ、またはコンソールの .NET プロジェクトにおいて、JPG、PNG、GIF、TIFF、BMP、JPEG または PDF などの事実上無制限の画像形式とファイルをサポートします。
画像出力からのプレーンテキスト、文字、行、段落の認識結果が思ったほど簡単でないかもしれませんが、IronOCR のフードの下では、実際には思った以上に簡単です。IronOCR は画像に対する整合性をスキャンし、そのノイズ削減とフィルターを活用して品質と解像度を確認します。プロパティを調べ、OCR エンジンを最適化し、トレーニングされた人工知能ネットワークを使用して、人間同様に画像からのテキストを認識します。
OCR はコンピューターにとっても簡単なプロセスではありません。しかし、IronOCR は 100% の精度で、少ないコード行数で検索可能なドキュメントを作成する全体のプロセスを迅速かつ簡単にします。
チュートリアルを読む
ソフトウェアは地理的境界に制限されません。ビジネスは国境を越えて機能し、成果を達成するために複数の言語に依存しています。同様に、単一の言語でのみドキュメント認識を行う光学式文字認識 (OCR) ツールは、あらゆる面で大きなNOです!
複数のOCR機能を提供する多言語OCRライブラリを使用すると、スキャンしたPDFやスキャン画像から複数の言語(フランス語から中国語まで)で検索可能なPDFドキュメントを作成することができます。あなたの時間と労力は、あなた、あなたのクライアント、またはあなたの組織が制限なく使用し再利用できるダイナミックで単語検索可能なPDFドキュメントによって効率化されます。
あなた、あなたのビジネス、あなたのOCRニーズに強く焦点を当て、組み込まれたものかリクエストされたものかにかかわらず、IronOCRライブラリはサポートされている多くの言語の広範な配列を持っています。次の.NETプロジェクトは言語互換性の心配から解放されることができます!
アラビア語、スペイン語、フランス語、ドイツ語、ヘブライ語、イタリア語、日本語、簡体字中国語、繁体字中国語(普通話)、デンマーク語、英語、フィンランド語、ポルトガル語、ロシア語、スペイン語またはスウェーデン語など、言語をお選びいただければ、私たちが提供いたします!お好みの言語パックをダウンロードするか、24時間365日サポートにお問い合わせいただければ、より多くの言語をご提供します。
最初のステップは、Windows Visual StudioのNuGetパッケージインストーラーを使用することです。
言語パックをダウンロードIronOCR は他のどの競合と異なるのか?OCR 機能を容易に追加し、テキストを抽出し、回転した画像をスキャンすることに加えて、不完全なスキャンからでも OCR を実行する能力があります!今日の市場にあるさまざまな即戦力製品の多くは、手動で印刷された高解像度で完全に調整されたテキストで動作するため、実際の個人および企業のアプリケーションでは失敗する運命にあります。
IronOCR は、Google Tesseract の能力をその強力な IronTesseract DLL で拡張します — 安定性が向上し、無料の Tesseract ライブラリより高精度なネイティブ C# OCR ライブラリです。
最高のツールを手にしたとき、たとえスキャンした画像やストレージフォルダに保管された画像が完璧でなくても、IronOCR の画像処理ライブラリは、ノイズを除去し、回転し、歪みとずれた配置を減らし、解像度とコントラストを向上させます。高度な光学文字認識 (OCR) 設定により、コーダーに最高の検索可能な結果を何度でも作成するためのツールとコードを提供します。
必要な単語を検索し、99.8-100% の正確な結果と PDF ドキュメント、多フレーム TIFF ファイル、JPEG & JPEG2000、GIF、PNG、BMP、WBMP、System.Drawing.Image、System.Drawing.Bitmap、System.IO.Stream の画像、バイナリ画像データ (byte[]) などすべてへの無制限のサポートに失望することはありません!
Tesseract への代替
他の .NET フレームワークの .NET アプリケーションとは異なり、IronOCR のパッケージマネージャーコンソールおよび認識されたテキストコンソール内にある高度な光学文字認識は、ユーザーに複数のフォント(Times New Roman からファンシーなものや理解するのが難しいと思われるものまで)、ウェイト、スタイルのテキストを全画像またはスキャン画像から正確に読み取る能力を提供します。画像の特定のエリアを選択すると、速度と精度の向上に役立ちます。数行から数段落のマルチスレッドは、OCR エンジンを高速化し、マルチコア マシンで複数のドキュメントを読み取ることを可能にします。
速度と正確さに関する当社の主張は、文字認識のプロセスに限られません。むしろ、改善はインストールの時点から開始されます。IronOCR の .NET OCR エンジンは、インストールが簡単な、完全でよく文書化された .NET ソフトウェアライブラリです。Visual Studio 用のシングル NuGet パッケージマネージャーインストールがあり、MVC、WebApp、デスクトップ、コンソール、およびサーバー アプリケーションとのマルチスレッド互換性があります。
外部の Web サービス、継続的な料金、または機密文書をインターネット上で送信する必要なく、99.8-100% の OCR 精度を達成できます。面倒な C++ コーディングなしで、IronOCR は複数の文字、単語、行、段落、テキスト、ドキュメントの完全な PDF OCR サポートを必要とする場合の明確な選択肢です。
パフォーマンス調整を必要とせず、入力画像を大幅に変更する必要のない開発者に最適なオプションを提供しています。最新の IronOCR バージョンは驚異的な速さで動作し、以前のビルドより 250% 以上のエラーを少なくし、最大で 10 倍以上高速です。私たちは、パーフェクトプラットフォームを提供することで、キミの目標をサポートするために自分たちのビルドをアップグレードします!
完全な機能一覧を見るモバイルデバイスを使用する場合でも、完璧な .NET OCR ライブラリは開発者が「安心して」コーディングできるようにし、IronOCR はコンテンツをシンプルでありながら複雑なテキスト、機械符号化テキスト、バーコードデータ、または構造化オブジェクトモデルデータとしてエクスポートすることをサポートします。コンテンツの段落、行、単語、文字、画像文字列の結果を分割して、.NET アプリ内で直接使用できます。
ソースコードから最終結果へ - 結果データは、アプリケーションにエクスポートすることができなければ無用です。IronOCR はこれを理解しており、検索可能な PDF ドキュメントに OCR 結果をエクスポートすることができます!これにより、クライアントや企業が PDF ドキュメントを必要に応じて保存し、取得できるだけでなく、完全性に問題がないことをアピールしましょう。特に視覚障害者にとって有益であることが証明されているので、30 ページの契約をデータベースでいくつかのキーワードで検索する際にも役立ちます。これに加え、OCR 出力を表現する OCR フォーマット、レイアウト情報、およびスタイル情報にエクスポートでき、標準 HTML に関連情報を埋め込むことができます。
さらに詳しく知る





C# Tesseract PDFライセンス


C# PDFライセンス ASP.NET

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


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