如何提取讀取結果
OCR 結果包括了檢測到的段落、行、單詞和單個字符的大量信息。 對於這些元素中的每一個,結果提供了一套全面的細節。
對於每個元素,它提供了文本內容、精確的X和Y坐標、尺寸(寬度和高度), 文字方向(從左到右或從上到下)和地點在一個裁剪矩形物件。
開始使用IronOCR
立即在您的專案中使用IronOCR,並享受免費試用。
如何提取讀取結果
- 下載 C# 程式庫以訪問讀取結果
- 準備目標圖像和PDF文件
- 使用
讀取
對已導入文件進行OCR的方法 - 訪問結果的X座標、Y座標、寬度、高度和文字方向
- 檢查檢測到的段落、行、詞語和字符比較
OcrResult中的資料
結果值不僅包含提取的文本,還提供了有關 IronOcr 在 PDF 和圖像文檔中發現的頁面、段落、行、單詞、字符和條形碼的信息。 您可以使用 Read
方法從返回的 OcrResult 物件中訪問此信息。
:path=/static-assets/ocr/content-code-examples/how-to/read-results-output-information.cs
using IronOcr;
using System;
using static IronOcr.OcrResult;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;
// Output information to console
Console.WriteLine($"Text: {paragraphs[0].Text}");
Console.WriteLine($"X: {paragraphs[0].X}");
Console.WriteLine($"Y: {paragraphs[0].Y}");
Console.WriteLine($"Width: {paragraphs[0].Width}");
Console.WriteLine($"Height: {paragraphs[0].Height}");
Console.WriteLine($"Text direction: {paragraphs[0].TextDirection}");
Imports IronOcr
Imports System
Imports IronOcr.OcrResult
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
' Retrieve list of detected paragraphs
Private paragraphs() As Paragraph = ocrResult.Paragraphs
' Output information to console
Console.WriteLine($"Text: {paragraphs(0).Text}")
Console.WriteLine($"X: {paragraphs(0).X}")
Console.WriteLine($"Y: {paragraphs(0).Y}")
Console.WriteLine($"Width: {paragraphs(0).Width}")
Console.WriteLine($"Height: {paragraphs(0).Height}")
Console.WriteLine($"Text direction: {paragraphs(0).TextDirection}")
對於文本的每個部分,例如段落、行、單詞和個別字符,我們提供以下信息:
- 文本:實際文本為字符串。
- X:頁面左邊緣的位置,以像素為單位。
- Y:頁面頂端邊緣的位置,以像素為單位。
- 寬度:以像素為單位的寬度。
- 高度:像素中的高度。
- 文字方向:文本的閱讀方向,如「由左至右」或「由上至下」。
- 位置:一個矩形,顯示此文字在頁面上的像素位置。
段落、行、單字與字元比較
以下是所檢測到的段落、行數、單詞和字符的比較。
段落 | 行 |
Word | 字符 |
條碼和 QR 碼
那是對的! IronOcr 可以讀取條碼和 QR 碼。 儘管此功能可能不如IronBarcode那麼強大,IronOcr確實為常見的條碼類型提供支持。要啟用條碼檢測,請將Configuration.ReadBarCodes屬性設置為true。
此外,可以從檢測到的條碼中提取寶貴資訊,包括其格式、值、坐標(x,y),高度、寬度和位置作為 IronSoftware.Drawing.Rectangle 物件。 這個矩形類別在鐵繪圖允許在文件上精確定位。
:path=/static-assets/ocr/content-code-examples/how-to/read-results-barcodes.cs
using IronOcr;
using System;
using static IronOcr.OcrResult;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Enable barcodes detection
ocrTesseract.Configuration.ReadBarCodes = true;
// Add image
using OcrInput ocrInput = new OcrInput();
ocrInput.LoadPdf("sample.pdf");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
// Output information to console
foreach(var barcode in ocrResult.Barcodes)
{
Console.WriteLine("Format = " + barcode.Format);
Console.WriteLine("Value = " + barcode.Value);
Console.WriteLine("X = " + barcode.X);
Console.WriteLine("Y = " + barcode.Y);
}
Console.WriteLine(ocrResult.Text);
Imports IronOcr
Imports System
Imports IronOcr.OcrResult
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Enable barcodes detection
ocrTesseract.Configuration.ReadBarCodes = True
' Add image
Using ocrInput As New OcrInput()
ocrInput.LoadPdf("sample.pdf")
' Perform OCR
Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
' Output information to console
For Each barcode In ocrResult.Barcodes
Console.WriteLine("Format = " & barcode.Format)
Console.WriteLine("Value = " & barcode.Value)
Console.WriteLine("X = " & barcode.X)
Console.WriteLine("Y = " & barcode.Y)
Next barcode
Console.WriteLine(ocrResult.Text)
End Using