如何使用 IronOCR 讀取截圖
截圖是一種快速且簡便的方法,可以共享信息並快速捕捉重要信息,以發送給同事和同行。 然而,由於截圖涉及的尺寸和噪聲,從截圖中提取文字往往被證明是困難的。 這使得截圖在OCR的發布中成為一種效果較差的媒介。
然而,IronOCR 通過提供專門的方法,如「ReadScreenShot」來解決這個問題。 ReadScreenshot 已針對閱讀截圖並從中提取信息進行了優化; 它也接受常見的文件格式。
在本指南中,我們將快速演示如何使用IronOCR進行截圖文字識別,逐步介紹示例及結果對象的屬性。
如何使用 IronOCR 讀取截圖
- 下載用於閱讀截圖的 C# 庫
- 導入截圖圖像進行處理
- 使用
ReadScreenShot
方法從圖像中提取文本 - 使用 OcrPhotoResult 屬性檢索提取的數據以進行進一步處理
- 根據需要保存或匯出提取的文字
立即在您的專案中使用IronOCR,並享受免費試用。
若要使用此功能,您還必須安裝 IronOcr.Extension.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);
Imports IronOcr
Imports System
Imports System.Linq
' Instantiate OCR engine
Private ocr = New IronTesseract()
Private inputScreenshot = New OcrInput()
inputScreenshot.LoadImage("screenshotOCR.png")
' Perform OCR
Dim result As OcrPhotoResult = 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 輸入中提取的文字。
Confidence: 一個「雙精度浮點」屬性,表示每個字元平均的統計準確度信心,以1為最高,0為最低。
TextRegion:一個「TextRegion」的數組,用於儲存返回螢幕截圖中找到文字區域的屬性。 預設情況下,所有TextRegion
是來自IronOCR模型的衍生Rectangle
類別。 它返回矩形的x和y坐标以及高度和寬度。