观看 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控制台、Web或桌面应用程序。 图像可以以PDF、JPG、PNG、GIF、BMP和TIFF格式提交。
专为 VB.NET, .NET, C#
光学字符识别软件以多种字体样式查看内容,以准确的文本OCR。 使用矩形读取区域提高速度和精确度。 多核多线程提高OCR读取速度。
IronOCR 的特别之处在于它能够读取扫描质量不佳的文档。 它独特的预处理库减少了背景噪音、旋转、扭曲和歪斜对齐,并简化颜色并增强分辨率和对比度。 Iron 的 AutoOCR 和高级 OCR 设置为开发人员提供了达到最佳结果的工具,每次。
语言包包括:阿拉伯语、简体中文、繁体中文、丹麦语、英语、芬兰语、法语、德语、希伯来语、意大利语、日语、韩语、葡萄牙语、俄语、西班牙语和瑞典语。其他语言可根据要求提供。
IronOCR 以纯文本和条形码数据输出内容。 另一种结构化数据对象模型允许开发人员接收以结构化标题、段落、行、单词和字符格式的所有内容,直接输入到 .NET 应用程序中。
免费社区开发许可证。商业许可证起价$749。
C# Tesseract OCR
Jim 一直是 IronOCR 开发的领导人物。 Jim 设计和构建 OCR 的图像处理算法和读取方法。
C# OCR ASP.NET
了解 Gemma 的团队如何使用 IronOCR 从图像中读取文本用于他们的存档软件。 Gemma 分享了她自己的代码示例。
Iron团队在.NET软件组件市场拥有超过10年的经验。
直接与我们的开发团队交谈
简单明了的在线手册。
免费开发许可证。商业版起价 $749。
通过 NuGet 或 DLL 在几分钟内开始使用。
无需信用卡
试用表单已成功提交。您的试用密钥应在电子邮件中。如果没有,请联系我们support@ironsoftware.com
您的试用密钥应在电子邮件中。如果没有,请联系我们support@ironsoftware.com
在生产环境中测试,没有水印。在您需要的地方使用。
使用功能齐全的产品30天。几分钟内即可启动和运行。
在产品试用期间,全面访问我们的支持工程团队
我们产品及其关键功能的在线演示
获取项目特定功能建议
我们会回答您的所有问题,确保您获得所需的全部信息。(无任何承诺)。
请检查您的电子邮件以获取试用许可证密钥。
如果您没有收到电子邮件,请启动live chat或发送电子邮件至support@ironsoftware.com
预订无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
预定一次 30 分钟的个人演示。
无合约、无卡号、无任何长期承诺。
版权所有 © Iron Software 2013-2026