如何使用IronOCR读取屏幕截图

2025年二月16日
更新 2025年二月16日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

截图是一种快速简单的方式,可以共享信息并快速捕捉重要信息发送给同事和同行。 然而,由于截图的尺寸和噪音,提取文本往往很困难。 这使得屏幕截图在发布OCR时成为一种效果较差的媒介。

然而,IronOCR 通过提供像 "ReadScreenShot" 这样的专门方法来解决这一问题。 ReadScreenshot 被优化用于读取截图并从中提取信息; 它还接受常见文件格式。

在本指南中,我们将快速演示如何使用IronOCR进行截图文本识别,介绍示例以及结果对象的属性。

立即在您的项目中开始使用IronOCR,并享受免费试用。

第一步:
green arrow pointer

要使用此功能,您还必须安装IronOcr.Extensions.AdvancedScan包。

阅读截图示例

在 IronOCR 中读取屏幕截图时,我们必须应用以下步骤。我们使用ReadScreenShot方法,该方法将OcrInput作为输入参数。 此方法比库的标准Read更适合用于截图优化。

请注意

  • 该方法目前仅适用于英语、中文、日语、韩语和拉丁字母。
  • 使用高级扫描在 .NET Framework 上需要项目运行在 x64 架构上。

输入

以下是我们的代码示例输入; 我们将通过混合不同的文本字体和大小来展示这种方法的多功能性。

输入

代码

:path=/static-assets/ocr/content-code-examples/how-to/read-screenshot-read-screenshot.cs
using IronOcr;
using System;
using System.Linq;

// Instantiate OCR engine
var ocr = new IronTesseract();

using var inputScreenshot = new OcrInput();
inputScreenshot.LoadImage("screenshotOCR.png");

// Perform OCR
OcrPhotoResult result = ocr.ReadScreenShot(inputScreenshot);

// Output screenshot information
Console.WriteLine(result.Text);
Console.WriteLine(result.TextRegions.First().Region.X);
Console.WriteLine(result.TextRegions.Last().Region.Width);
Console.WriteLine(result.Confidence);

输出

输出

如上面的控制台输出所示,它从屏幕截图中提取了所有文本实例。 让我们更深入地探讨OcrPhotoResult的属性。

文本:从OCR输入中提取的文本。

置信度:“double” 属性,指示每个字符的平均统计准确性置信度,1 为最高,0 为最低。

TextRegion:一个包含“TextRegion”的数组,具有返回屏幕截图中找到文本区域的属性。 默认情况下,所有TextRegion是IronOCR模型中的派生Rectangle类。 它返回矩形的 x 和 y 坐标以及高度和宽度。