觀看David Jones, Agorus, 使用Iron Suite創造新效能
觀看Milan Jovanović使用IronPDF
觀看我們的團隊產品演示
using IronOcr; string imageText = new IronTesseract().Read(@"images\image.png").Text;
Install-Package IronOcr
IronOCR 的獨特之處在於它能夠自動偵測和讀取掃描不完美的影像和 PDF 文件中的文字。 IronTesseract 類別提供了最簡單的 API。
IronOCR
IronTesseract
嘗試其他程式碼範例,以獲得對 C# OCR 操作的更精細控制。
IronOCR 提供了目前已知最先進的 Tesseract 版本,適用於任何平台,速度更快,準確性更高,並且具有原生 DLL 和 API。
Tesseract
支援.NET Framework、Standard、Core、Xamarin 和 Mono 的 Tesseract 3、Tesseract 4 和 Tesseract 5。
Explore the IronTesseract C# OCR How-To Guide
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); }
IronOCR語言支持 IronOCR支援 125 種國際語言。 除了預設安裝的英文之外,還可以透過NuGet將其他語言套件新增至您的.NET專案中,或從我們的語言頁面下載其他語言套件。 大多數語言都提供快速、標準(建議)和最佳品質三種版本。 最佳品質選項可能提供更準確的結果,但處理時間也會更慢。 使用IronOCR探索多種語言的 OCR 功能。
IronOCR支援 125 種國際語言。 除了預設安裝的英文之外,還可以透過NuGet將其他語言套件新增至您的.NET專案中,或從我們的語言頁面下載其他語言套件。
大多數語言都提供快速、標準(建議)和最佳品質三種版本。 最佳品質選項可能提供更準確的結果,但處理時間也會更慢。
使用IronOCR探索多種語言的 OCR 功能。
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; } } } } }
IronOCR使用 Tesseract 5 掃描每一頁,並傳回一個進階結果物件。 這包含位置資料、圖像、文字、統計置信度、替代符號、字體名稱、字號裝飾、字重以及每個元素的位置:
Page
Paragraph
Word
Barcode
探索如何使用IronOCR讀取 OCR 結果
對於產品或授權問題,Iron 團隊準備為您提供支持。發送您的問題,我們將確保 Iron 的相關人員為您回答。
單個或多個頁面可以發送到 IronOCR。您將收到所有文字、條碼和 QR 內容作為結果。將 OCR 功能添加到 .NET 控制臺、網絡或桌面應用程式。圖像可以以 PDF、JPG、PNG、GIF、BMP 和 TIFF 格式提交。
製作於 VB.NET, .NET, C#
光學字符識別軟體可查看多種字體樣式的內容,以進行準確的文字 OCR。使用矩形讀取區域來提高速度和準確性。多核心多線程提高了 OCR 閱讀速度。
IronOCR 的特性在於其閱讀不良掃描文件的能力。其獨特的預處理函式庫減少背影噪音、旋轉、失真和倾斜對齐,並簡化顏色、增強分辨率和對比度。Iron 的 AutoOCR 和 Advanced OCR 設定為開發者提供每次都獲得最佳結果的工具。
語言包可用於:阿拉伯語、簡體中文、繁體中文、丹麥語、英語、芬蘭語、法語、德語、希伯來語、義大利語、日語、韓語、葡萄牙語、俄語、西班牙語和瑞典語。其他語言可根據請求提供支持。
IronOCR 輸出內容為純文本和條碼數據。另一種選擇的結構化數據對象模型允許開發者接收所有內容,以結構化的標題、段落、行、單詞和字符的格式,直接輸入 .NET 應用程序中。
免費 社區開發許可證。商業許可證從 $749 開始。
C# Tesseract OCR
Jim 在 IronOCR 的開發中是一位領導人物。Jim 設計和構建影像處理算法及 OCR 的讀取方法。
C# OCR ASP.NET
學習 Gemma 的團隊如何使用 IronOCR 從影像中讀取文本以用於他們的檔案存檔軟件。Gemma 分享了她自己的代碼樣本。
Iron 的團隊有超過 10 年的 .NET 軟件組件市場經驗。
直接與我們的開發團隊交談
在線手冊清晰易懂。
免費開發許可證。商業版從 $749 起。
使用 NuGet 或 DLL 在幾分鐘內開始。
無需信用卡
試用表單已提交成功。您的試用密鑰應該在電子郵件裡。如果沒有,請聯繫support@ironsoftware.com
您的試用密鑰應該在電子郵件裡。如果沒有,請聯繫support@ironsoftware.com
在生產環境中測試而不帶水印。適用於您所需的任何地方。
獲得 30 天完整功能產品。幾分鐘內即可運行。
在您的產品試用期間全面訪問我們的支援技術團隊
產品與其關鍵功能的即時展示
獲取項目特定的功能建議
我們會回答您所有的問題,以確保您掌握所有需要的資訊。(絕無承諾)。
請檢查您的電子郵件以取得試用授權金鑰。
如果您沒有收到電子郵件,請啟動 即時聊天 或寄送電子郵件至 support@ironsoftware.com
預約無需承諾的諮詢
完成以下表單或發送電子郵件至 sales@ironsoftware.com
您的詳細信息將始終保密。
預訂 30 分鐘的個人演示。
無須合約、無須卡號、無任何長期綁約。
版權所有 © Iron Software 2013-2026