
如何在 C# 中从截图中获取文本
很多人可能会想,"什么是OCR屏幕截图?" 其他人可能想知道如何将任何文字的屏幕截图转换为可编辑的数字文本格式或.txt、.doc格式。 如果您是这些人中的一员,那么不用再担心,因为我们为您提供了完美的解决方案。
在本文中,我们将讨论不同的工具,这些工具将让您对屏幕截图执行OCR,光学字符识别。
外面有许多OCR工具,但今天我们将使用IronOCR从屏幕截图中提取文本。
1. IronOCR
IronOCR是为C#和VB.NET编程语言设计的软件库,旨在让开发人员能够为他们的应用程序添加OCR(光学字符识别)功能。 该库可用于识别图像中的文本并将其转换为机器可读文本。 该库基于被认为是目前最准确的OCR引擎之一的Tesseract OCR引擎构建。
IronOCR可以用于从许多不同文件格式的图像中读取文本,包括PNG、JPG、TIFF和PDF。 它还提供了一系列高级特性来处理文本识别,例如识别多种语言的能力,以及识别被旋转或倾斜的图像中的文本的能力。 此外,开发人员可以使用IronOCR快速将OCR功能集成到他们的应用程序中,因为它提供了一个简单易用的API,可以从C#或VB.NET代码中调用。 使用IronOCR,您可以选择您的OCR语言,并对图像、数字PDF文件和扫描的PDF文件执行OCR。
IronOCR被认为是开发人员想要为他们的应用程序添加OCR功能的一个不错的选择。 它是开源的,易于使用和集成,快速,准确,并与最新的OCR技术保持同步。
2. IronOCR功能
IronOCR提供了广泛的功能,帮助开发人员将OCR功能集成到他们的应用程序中。 IronOCR的一些关键功能包括:
- 多语言支持:IronOCR可以识别超过60种语言的文本,包括英语、西班牙语、德语、法语、意大利语和中文。
- 自动检测文本方向:IronOCR可以自动检测图像中文本的方向,即使图像已经被旋转或倾斜。 3.支持多种图像格式: IronOCR可以读取多种不同文件格式的图像中的文本,包括 PNG、JPG、 TIFF和PDF 。 4.**可自定义的识别设置:**开发者可以自定义识别设置,以提高特定类型图像或使用场景的识别准确率。
- 能够识别扫描文档和多页PDF中的文本。 6.识别速度快,准确率高: IronOCR使用 Tesseract OCR 引擎,这是目前最准确、应用最广泛的 OCR 引擎之一。 7.易于使用的 API: IronOCR提供了一个简单易用的 API,可以从 C# 或 VB .NET代码中调用,这使得将 OCR 功能集成到任何应用程序中变得容易。
总的来说,IronOCR是一个强大的工具,提供了广泛的功能,帮助开发人员为他们的应用程序添加OCR功能。
3. 在Visual Studio中创建新项目
打开 Visual Studio 并转到文件菜单。 选择"新建项目",然后选择控制台应用程序。
在适当的文本框中输入项目名称并选择路径。 然后,点击创建按钮。 选择所需的.NET框架,如下图所示:
在Visual Studio中创建新项目
Visual Studio项目现在将为控制台应用程序生成结构。 完成后,它将打开program.cs文件,您可以在其中编写和执行源代码。
从Visual Studio的新建项目向导生成的program.cs文件
现在我们可以添加IronOCR库并测试程序。
4. 安装IronOCR
在Visual Studio中,您可以轻松地将IronOCR与您的C#项目集成。
IronOCR提供了多种与C# .NET项目集成的方法。 这里,我们将讨论其中之一:使用NuGet包管理器安装IronOCR。
在Visual Studio中,前往工具 > NuGet包管理器 > 包管理器控制台
NuGet包管理器UI
点击后,Visual Studio窗口底部将出现一个新的控制台。 在控制台中输入以下命令并按回车。
IronOCR将在几秒钟内安装完成。
5. 使用IronOCR对屏幕截图执行OCR
IronOCR是一个强大的OCR库,可以用于识别屏幕截图中的文本。 通过IronOCR,您可以截取文本的屏幕截图,然后使用该库的OCR功能将截图中的文本转换为数字、可编辑的格式。 以下是您可能在C#中使用IronOCR对屏幕截图执行OCR的示例。 要执行屏幕截图OCR,只需截取屏幕截图并运行以下代码,将文本提取到任何您希望的输出格式。
using IronOcr;
using System;
class Program
{
static void Main()
{
// Create an instance of IronTesseract, the core OCR engine
var ocr = new IronTesseract();
// Perform OCR on the specified image file
var result = ocr.Read("ocr.png");
// Output the recognized text to the console
Console.WriteLine(result.Text);
}
}Imports IronOcr
Imports System
Friend Class Program
Shared Sub Main()
' Create an instance of IronTesseract, the core OCR engine
Dim ocr = New IronTesseract()
' Perform OCR on the specified image file
Dim result = ocr.Read("ocr.png")
' Output the recognized text to the console
Console.WriteLine(result.Text)
End Sub
End Class输入图片文件
用于输入的示例屏幕截图
文本输出
- IRONOCR for NET
- The C# OCR Library
- OCR for C# to scan and read images & PDFs
- NET OCR library with 125+ global language packs
- Output as text, structured data, or searchable PDFs
- Supports NET 6, 5, Core, Standard, Framework
6. 使用IronOCR对特定区域执行OCR
IronOCR允许您对图像中的特定区域进行OCR。 这在图像中包含多个文本区域时非常有用,您只想识别特定区域内的文本。 下面是一个示例代码。
using IronOcr;
using IronSoftware.Drawing;
using System;
class Program
{
static void Main()
{
var ocrTesseract = new IronTesseract();
using (var ocrInput = new OcrInput())
{
// Define the rectangle to crop the image for OCR
var contentArea = new CropRectangle(x: 0, y: 0, width: 350, height: 150);
// Add the image with the specified cropping area
ocrInput.AddImage("ocr.png", contentArea);
// Perform the OCR operation on the defined area
var ocrResult = ocrTesseract.Read(ocrInput);
// Output the recognized text
Console.WriteLine(ocrResult.Text);
}
}
}Imports IronOcr
Imports IronSoftware.Drawing
Imports System
Friend Class Program
Shared Sub Main()
Dim ocrTesseract = New IronTesseract()
Using ocrInput As New OcrInput()
' Define the rectangle to crop the image for OCR
Dim contentArea = New CropRectangle(x:= 0, y:= 0, width:= 350, height:= 150)
' Add the image with the specified cropping area
ocrInput.AddImage("ocr.png", contentArea)
' Perform the OCR operation on the defined area
Dim ocrResult = ocrTesseract.Read(ocrInput)
' Output the recognized text
Console.WriteLine(ocrResult.Text)
End Using
End Sub
End Class输出
- IRONOCR for NET
- The C# OCR Library
- OCR for C# to scan and read images & PDFs
- NET OCR library with 125+ global language packs
7. 使用IronOCR对图像执行OCR
要对图像执行OCR并将识别的文本保存到一个.txt文件中,您可以使用以下代码。
using IronOcr;
using System;
class Program
{
static void Main()
{
var ocr = new IronTesseract();
using (var input = new OcrInput("ocr.png"))
{
// Perform OCR on the image
var result = ocr.Read(input);
// Save the recognized text to a .txt file
result.SaveAsTextFile("output.txt");
}
}
}Imports IronOcr
Imports System
Friend Class Program
Shared Sub Main()
Dim ocr = New IronTesseract()
Using input = New OcrInput("ocr.png")
' Perform OCR on the image
Dim result = ocr.Read(input)
' Save the recognized text to a .txt file
result.SaveAsTextFile("output.txt")
End Using
End Sub
End Class输出文件的内容如下所示:
生成的output.txt文件的内容
8. 了解更多
阅读图像文本提取教程,以获取有关如何对图像执行OCR的更多信息。
IronOCR是一个套件的一部分,这个套件包含五个.NET库,设计用于处理不同类型的文档。 您可以以两个许可证的价格购买所有五个库。
相关文章


