使用 IRONOCR

如何在C#中從截圖中獲取文字OCR

已更新 2023年12月18日
分享:

許多人可能會想知道 "OCR 截圖是什麼?" 另一些人可能想知道如何將任意文本的截圖轉換為可編輯的數字文本格式,或轉換為 .txt 或 .doc 格式。如果你是這些人之一,那麼不用擔心,因為我們有專為你準備的完美解決方案。

在本文中,我們將討論不同的工具,這些工具可以讓你對截圖執行 OCR (光學字符識別)。

市面上有很多 OCR 工具,但今天我們將使用 IronOCR 從截圖中提取文本。

1. IronOCR

IronOCR 是一個適用於 C# 和 VB.NET 程式語言的軟體庫,旨在讓開發人員能夠添加 OCR(光學文字辨識)功能。 (光學字符識別) 他們應用程序的能力。該庫可用於識別圖像中的文字並將其轉換為機器可讀的文字。該庫基於 Tesseract OCR 引擎,該引擎被認為是當前最準確的 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 的一些主要功能包括:

  1. 多語言支持:IronOCR可以識別超過60種語言的文本,包括英語、西班牙語、德語、法語、義大利語和中文。

  2. 自動檢測文字方向: IronOCR可以自動檢測圖片中文字的方向,即使圖片已被旋轉或歪斜。

  3. 支援多種圖片格式:IronOCR可以從多種不同格式的圖片中讀取文字,包括PNG、JPG, TIFF,和 PDF.

  4. 可定制的識別設置:開發人員可以自定義識別設置,以提高對特定類型圖片或使用案例的識別準確性。

  5. 能夠從多頁掃描文檔和PDF中識別文字。

  6. 快速識別和高準確性:IronOCR使用Tesseract OCR引擎,這是當前最準確且最廣泛使用的OCR引擎之一。

  7. 易於使用的API:IronOCR提供了一個簡單、易於使用的API,可以從C#或VB.NET代碼中調用,這使得將OCR功能集成到任何應用程序中變得容易。

總體而言,IronOCR是一個強大的工具,它提供了廣泛的功能來幫助開發人員將OCR功能添加到他們的應用程序中。

3. 在 Visual Studio 中創建新專案

打開 Visual Studio 並進入檔案選單。選擇「新專案」,然後選擇主控台應用程式。

在適當的文字框中輸入專案名稱和選擇路徑。然後,點擊創建按鈕。選擇所需的 .NET 框架,如下圖所示:

如何在C#中從截圖獲取文字的OCR,圖1:在Visual Studio中創建一個新項目

在 Visual Studio 中創建新項目

Visual Studio 項目現在將為控制台應用程式生成結構。完成後,它會打開 program.cs 文件,您可以在其中編寫和執行源代碼。

如何在C#中從螢幕截圖中取得OCR文字,圖2:由Visual Studio的新專案精靈生成的program.cs檔案

從 Visual Studio 的新專案精靈生成的 program.cs 文件

現在我們可以添加 IronOCR 庫並測試該程序。

4. 安裝 IronOCR

在 Visual Studio 中,您可以輕鬆地將 IronOCR 與您的 C# 專案整合。

IronOCR 提供多種將其整合到 C# .NET 項目的方法。在此,我們將討論其中之一:使用 NuGet 套件管理器安裝 IronOCR。

在 Visual Studio 中,前往 工具 > NuGet 套件管理器 > 套件管理器主控台

如何在 C# 中從截圖中提取文字的 OCR,圖 3:NuGet 套件管理器 UI

NuGet 套件管理器 UI

點擊後,一個新的控制臺將會出現在 Visual Studio 窗口的底部。在控制臺中輸入以下命令,然後按下 Enter 鍵。

Install-Package IronOcr

IronOCR 可以在幾秒鐘內安裝完成。

5. 使用 IronOCR 進行螢幕截圖的光學字符識別 (OCR)

IronOCR 是一個強大的光學字符識別 (OCR) 庫,可以用來識別螢幕截圖中的文字。使用 IronOCR,您可以截取包含文字的螢幕截圖,然後使用該庫的 OCR 功能將截圖中的文字轉換為數位、可編輯的格式。以下是一個使用 IronOCR 進行 C# 截圖 OCR 的範例。要執行螢幕截圖的 OCR,只需捕捉螢幕截圖並運行以下程式碼即可將文字提取到您希望的任何輸出格式。

using IronOcr;
using System;

string imageText = new IronTesseract().Read("ocr.png").Text;
Console.WriteLine(imageText);
using IronOcr;
using System;

string imageText = new IronTesseract().Read("ocr.png").Text;
Console.WriteLine(imageText);
Imports IronOcr
Imports System

Private imageText As String = (New IronTesseract()).Read("ocr.png").Text
Console.WriteLine(imageText)
VB   C#

輸入圖像文件

如何在 C# 中從螢幕截圖中取得文字 OCR,圖 4:用作輸入的樣本螢幕截圖

用於輸入的範例螢幕截圖

文字輸出

- IRONOCR for NET
- The C# OCR Library
- OCR for C# to scan and read images & PDFs
- NET OCR library with 127+ 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;

var ocrTesseract = new IronTesseract();
using (var ocrInput = new OcrInput())
{
    var contentArea = new CropRectangle(x: 0, y: 0, width: 350, height: 150);
    ocrInput.AddImage("ocr.png", contentArea);
    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
using IronOcr;
using IronSoftware.Drawing;
using System;

var ocrTesseract = new IronTesseract();
using (var ocrInput = new OcrInput())
{
    var contentArea = new CropRectangle(x: 0, y: 0, width: 350, height: 150);
    ocrInput.AddImage("ocr.png", contentArea);
    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports IronSoftware.Drawing
Imports System

Private ocrTesseract = New IronTesseract()
Using ocrInput As New OcrInput()
	Dim contentArea = New CropRectangle(x:= 0, y:= 0, width:= 350, height:= 150)
	ocrInput.AddImage("ocr.png", contentArea)
	Dim ocrResult = ocrTesseract.Read(ocrInput)
	Console.WriteLine(ocrResult.Text)
End Using
VB   C#

輸出

  • IRONOCR for .NET
  • C# OCR庫
  • C#的OCR來掃描和讀取圖像及PDF
  • .NET OCR庫包含127+種全球語言包

7. 使用 IronOCR 執行圖片 OCR

要在圖片上執行 OCR 並將識別的文字儲存在 .txt 檔案中,可以使用以下代碼。

using IronOcr;
using System;

var ocr = new IronTesseract();
using (var input = new OcrInput("ocr.png"))
{
    var result = ocr.Read(input);
    result.SaveAsTextFile("output.txt");
}
using IronOcr;
using System;

var ocr = new IronTesseract();
using (var input = new OcrInput("ocr.png"))
{
    var result = ocr.Read(input);
    result.SaveAsTextFile("output.txt");
}
Imports IronOcr
Imports System

Private ocr = New IronTesseract()
Using input = New OcrInput("ocr.png")
	Dim result = ocr.Read(input)
	result.SaveAsTextFile("output.txt")
End Using
VB   C#

輸出文件的內容如下:

如何在 C# 中從螢幕截圖中獲取文字進行 OCR,圖 5:生成的 output.txt 文件的內容

生成的 output.txt 文件的內容

8. 了解更多

閱讀 圖像文本提取 更多有關如何對圖像進行OCR的訊息,請參閱教程。

IronOCR 是整個 套件 五個 .NET 庫,旨在處理不同類型的文件。您只需以兩個庫的價格即可購買這五個庫。 授權.

< 上一頁
如何從 C# 教程中獲取發票文本
下一個 >
如何在 C# 中進行字幕光學字符識別(教程)

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 2,433,305 查看許可證 >