跳過到頁腳內容
使用 IRONOCR

如何在 C# 中從螢幕截圖中提取文本

很多人可能想知道"什麼是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。

對於想要在應用程式中添加 OCR 功能的開發人員來說, IronOCR被認為是一個不錯的選擇。 它是開源的,易於使用和集成,速度快,準確,並且與最新的 OCR 技術保持同步。

2. IronOCR特點

IronOCR提供多種功能,幫助開發人員將 OCR 功能整合到他們的應用程式中。 IronOCR的一些主要功能包括:

1.多語言支援: IronOCR可以識別 60 多種語言的文本,包括英語、西班牙語、德語、法語、義大利語和中文。 2.自動偵測文字方向: IronOCR可以自動偵測影像中文字的方向,即使影像已經旋轉或傾斜。 3.支援多種圖像格式: IronOCR可以讀取多種不同文件格式的圖像中的文本,包括 PNG、JPG、 TIFFPDF 。 4.可自訂的識別設置:開發者可以自訂識別設置,以提高特定類型圖像或使用場​​景的識別準確率。

  1. 能夠辨識掃描文件和多頁 PDF 中的文字。 6.辨識速度快,準確率高: IronOCR使用 Tesseract OCR 引擎,這是目前最準確、應用最廣泛的 OCR 引擎之一。 7.易於使用的 API: IronOCR提供了一個簡單易用的 API,可以從 C# 或 VB .NET程式碼中調用,這使得將 OCR 功能整合到任何應用程式中變得容易。

總的來說, IronOCR是一款功能強大的工具,它提供了一系列功能,可以幫助開發人員將 OCR 功能添加到他們的應用程式中。

3. 在 Visual Studio 中建立新項目

開啟 Visual Studio,然後前往"檔案"選單。 選擇"新建專案",然後選擇"控制台應用程式"。

在對應的文字方塊中輸入項目名稱並選擇路徑。 然後,點擊"創建"按鈕。 選擇所需的.NET Framework版本,如下圖所示:

如何在 C# 中使用 OCR 從螢幕截圖中提取文本,圖 1:在 Visual Studio 中建立新專案 在 Visual Studio 中建立新項目

Visual Studio 專案現在將產生控制台應用程式的結構。 完成後,它將打開 program.cs 文件,您可以在其中編寫和執行原始程式碼。

如何在 C# 中使用 OCR 從螢幕截圖中提取文本,圖 2:使用 Visual Studio 的 program.cs 檔案是由 Visual Studio 的"新專案精靈"產生的。

現在我們可以新增IronOCR庫並測試程式了。

4. 安裝IronOCR

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

IronOCR提供多種流程,可與 C# .NET專案整合。 在這裡,我們將討論其中一種方法:使用NuGet套件管理器安裝IronOCR 。

在 Visual Studio 中,前往"工具" > "NuGet套件管理員" > "套件管理器控制台"。

如何在 C# 中使用 OCR 從螢幕截圖中提取文本,圖 3: NuGet套件管理器 UI NuGet套件管理器使用者介面

點擊後,Visual Studio 視窗底部將出現一個新的控制台。 在控制台中輸入以下命令並按下回車鍵。

Install-Package IronOcr

IronOCR只需幾秒鐘即可安裝完成。

5. 使用IronOCR對螢幕截圖進行 OCR 識別

IronOCR是一個功能強大的 OCR 庫,可用於識別螢幕截圖中的文字。 使用IronOCR,您可以截取文字的螢幕截圖,然後使用圖書館的 OCR 功能將螢幕截圖中的文字轉換為可編輯的數位格式。 以下是如何使用IronOCR在 C# 中對螢幕截圖執行 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);
    }
}
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);
    }
}
$vbLabelText   $csharpLabel

輸入影像檔案

如何在 C# 中使用 OCR 從螢幕截圖中提取文本,圖 4:用於輸入的範例螢幕截圖 輸入範例螢幕截圖

文字輸出

- 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);
        }
    }
}
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);
        }
    }
}
$vbLabelText   $csharpLabel

輸出

- 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");
        }
    }
}
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");
        }
    }
}
$vbLabelText   $csharpLabel

輸出文件的內容如下所示:

如何在 C# 中使用 OCR 從螢幕截圖中提取文本,圖 5:生成的 output.txt 檔案的內容 產生的 output.txt 檔案的內容

8. 了解更多

請閱讀圖像文字擷取教程,以了解有關如何對圖像執行 OCR 的更多資訊。

IronOCR是一套包含五個.NET庫的套件的一部分,旨在處理不同類型的文件。 您只需支付兩份許可證的價格,即可購買全部五個庫。

常見問題解答

如何使用 C# 中的 OCR 從螢幕截圖中提取文字?

您可以在 C# 中使用 IronOCR 從螢幕截圖中提取文字,通過其簡單的 API 將螢幕截圖轉換為可編輯的數字文字格式。首先通過 NuGet 在 Visual Studio 中安裝 IronOCR,然後使用 IronOCR 提供的代碼示例對您的螢幕截圖圖片進行 OCR。

什麼是光學字符識別 (OCR)?

光學字符識別 (OCR) 是一項將各類文檔(如掃描紙質文檔、PDF 文件或數碼相機拍攝的圖片)轉換為可編輯和可搜索數據的技術。IronOCR 是一個 C# 庫,可以在應用程序中輔助實現 OCR。

IronOCR 可以處理多種語言的 OCR 嗎?

是的,IronOCR 支援超過 60 種語言的文字識別,使其適用於國際化應用程序。它提供設置語言偏好的選項以確保準確的文字提取。

IronOCR 支持哪些圖片格式進行 OCR?

IronOCR 支援多種圖像格式進行 OCR,包括 PNG、JPG、TIFF 和 PDF。這種靈活性允許開發人員在使用各種圖像來源時不必手動轉換格式。

文字方向會如何影響 OCR 的準確度?

文字方向會大大影響 OCR 的準確性。IronOCR 自動檢測和校正圖像中的文字方向,確保旋轉或傾斜的文字能夠準確識別並轉換為數字格式。

如何在 C# 項目中安裝 IronOCR?

要在 C# 項目中安裝 IronOCR,使用 Visual Studio 中的 NuGet 封裝管理器。搜索 IronOCR 並將其安裝到您的項目中,以開始使用其 OCR 功能從圖像中提取文字。

使用 IronOCR 進行文字識別的優勢是什麼?

IronOCR 提供了幾個優勢,包括強大的多語言支持、自動文本方向校正、支持多種圖像格式以及可自定義設置以提高識別準確性。其簡單的 API 使其易於集成到 C# 應用程序中。

IronOCR 適合在圖像的特定區域識別文字嗎?

是的,IronOCR 允許開發人員在圖像中定義特定區域進行 OCR,使目標文字提取成為可能。此功能在圖像只有部分包含相關文字的場景中特別有用。

有關 OCR 問題的一些常見故障排除技巧是什麼?

常見的 OCR 問題故障排除技巧包括確保圖像清晰且分辨率高、檢查文字方向、確保設置了正確的語言,以及更新到最新版本的 IronOCR 以獲得最佳表現。

如何將 OCR 結果轉換為 .txt 或 .doc 文件?

使用 IronOCR,您可以將 OCR 結果轉換為 .txt 或 .doc 文件 ,通過從圖像中提取文字並使用 C# 中的標準文件 I/O 操作將其保存。這使您可以從基於圖像的文字創建可編輯文檔。

Kannaopat Udonpant
軟體工程師
在成為軟件工程師之前,Kannapat 從日本北海道大學完成了環境資源博士學位。在追逐學位期间,Kannapat 還成為了生產工程系一部份——汽車机器人實验室的成員。2022 年,他利用他的 C# 技能加入 Iron Software 的工程團隊, 專注於 IronPDF。Kannapat 珍惜他的工作,因為他直接向编写大部分 IronPDF 使用的代碼的開發者学习。除了同行学习,Kannapat 还喜欢在 Iron Software 工作的社交十环。当他不编写代碼或文檔時,Kannapat 通常在他的 PS5 上打游戏或重看《The Last of Us》。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me