如何在 C# 中使用 OcrProgress Tracking

如何在 C# 中使用 IronOCR 進行進度跟踪

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronOCR 提供了一個事件訂閱功能,用於追蹤 OCR(光學字元辨識)讀取操作的進度。 這些屬性提供了有關 OCR 作業的進度、持續時間和完成狀態的寶貴信息,使應用程式能夠有效地監控和報告 OCR 過程。

快速入門:訂閱 OcrProgress 並閱讀 PDF

此範例顯示如何使用 IronOCR 輕鬆監控 OCR 進度:訂閱其內建的OcrProgress事件,並在閱讀 PDF 時獲得即時回饋(百分比、已完成頁數、總頁數)。 開頭只需幾行程式碼。

Nuget Icon立即開始使用 NuGet 建立 PDF 檔案:

  1. 使用 NuGet 套件管理器安裝 IronOCR

    PM > Install-Package IronOcr

  2. 複製並運行這段程式碼。

    var ocr = new IronOcr.IronTesseract();
    ocr.OcrProgress += (s, e) => Console.WriteLine(e.ProgressPercent + "% (" + e.PagesComplete + "/" + e.TotalPages + ")");
    var result = ocr.Read(new IronOcr.OcrInput().LoadPdf("file.pdf"));
  3. 部署到您的生產環境進行測試

    立即開始在您的專案中使用 IronOCR,免費試用!
    arrow pointer


進度追蹤範例

訂閱OcrProgress事件即可接收閱讀過程的進度更新。 The event will pass an instance containing information about the progress of the OCR job, such as the start time, total pages, progress as a percentage, duration, and end time. Let's use the following document as our sample: "Experiences in Biodiversity Research: A Field Course" by Thea B. 蓋斯勒,愛荷華州立大學。

:path=/static-assets/ocr/content-code-examples/how-to/progress-tracking-progress-tracking.cs
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

// Subscribe to OcrProgress event
ocrTesseract.OcrProgress += (_, ocrProgressEventsArgs) =>
{
    Console.WriteLine("Start time: " + ocrProgressEventsArgs.StartTimeUTC.ToString());
    Console.WriteLine("Total pages number: " + ocrProgressEventsArgs.TotalPages);
    Console.WriteLine("Progress(%) | Duration");
    Console.WriteLine("    " + ocrProgressEventsArgs.ProgressPercent + "%     | " + ocrProgressEventsArgs.Duration.TotalSeconds + "s");
    Console.WriteLine("End time: " + ocrProgressEventsArgs.EndTimeUTC.ToString());
    Console.WriteLine("----------------------------------------------");
};

using var input = new OcrInput();
input.LoadPdf("Experiences-in-Biodiversity-Research-A-Field-Course.pdf");

// Progress events will fire during the read operation
var result = ocrTesseract.Read(input);
Imports IronOcr
Imports System

Private ocrTesseract = New IronTesseract()

' Subscribe to OcrProgress event
Private ocrTesseract.OcrProgress += Sub(underscore, ocrProgressEventsArgs)
	Console.WriteLine("Start time: " & ocrProgressEventsArgs.StartTimeUTC.ToString())
	Console.WriteLine("Total pages number: " & ocrProgressEventsArgs.TotalPages)
	Console.WriteLine("Progress(%) | Duration")
	Console.WriteLine("    " & ocrProgressEventsArgs.ProgressPercent & "%     | " & ocrProgressEventsArgs.Duration.TotalSeconds & "s")
	Console.WriteLine("End time: " & ocrProgressEventsArgs.EndTimeUTC.ToString())
	Console.WriteLine("----------------------------------------------")
End Sub

Private input = New OcrInput()
input.LoadPdf("Experiences-in-Biodiversity-Research-A-Field-Course.pdf")

' Progress events will fire during the read operation
Dim result = ocrTesseract.Read(input)
$vbLabelText   $csharpLabel
進度更新

活動資訊

  • ProgressPercent :表示 OCR 作業的進度,以已完成頁數的百分比表示。 其範圍從 0 到 100。
  • TotalPages :表示 OCR 引擎正在處理的頁面總數。
  • PagesComplete :指定 OCR 讀取已完全完成的頁數。 隨著頁面處理,此計數可能會逐漸增加。
  • Duration :表示 OCR 作業的總持續時間,指示完成整個流程所需的時間。 它以 TimeSpan 格式衡量。 每次事件觸發時,此時間都會更新。
  • StartTimeUTC :表示 OCR 作業開始的日期和時間,以協調世界時 (UTC) 格式表示。
  • EndTimeUTC :表示 OCR 作業 100% 完成的日期和時間(UTC 格式)。 OCR 程序進行中時,此屬性為空;OCR 程序完成後,此屬性將被填入。

常見問題解答

如何跟踪 C# 中 OCR 任務的進度?

您可以通過訂閱 IronOCR 中的 OcrProgress 事件來追踪 C# 中 OCR 任務的進度。該事件提供有關完成百分比、時長和處理頁數的更新。

在 OCR 操作中 OcrProgress 事件的作用是什麼?

IronOCR 中的 OcrProgress 事件允許開發者實時接收 OCR 任務狀態的更新,包括進度百分比、總時長、開始和結束時間以及處理的總頁數。

ProgressPercent 屬性提供什麼信息?

IronOCR 中的 ProgressPercent 屬性表示 OCR 任務的進度百分比,提供從 0 到 100 的清晰完成度視圖。

如何獲取 OCR 過程的總時長?

您可以通過訪問 IronOCR 中的 Duration 屬性獲得 OCR 過程的總時長,該屬性隨著 OcrProgress 事件每次觸發而更新,反映整個過程所需的時間。

我可以確定 OCR 任務的開始和結束時間嗎?

可以,IronOCR 提供的 StartTimeUTCEndTimeUTC 屬性分別表示 OCR 任務的開始和完成時間(以 UTC 格式)。

如何在 OCR 處理過程中處理多頁?

在 IronOCR 中,您可以使用 TotalPagesPagesComplete 屬性來追踪正在處理的總頁數以及已完全處理的頁數。

使用進度追踪功能進行 OCR 的實用示例是什麼?

一個實用示例是,在處理一份名為 “生物多樣性研究經歷:野外課程”的文檔時,訂閱 OcrProgress 事件。這展示了如何在 IronOCR 中追踪進度、時長和完成狀態。

Chaknith Bin
軟體工程師
Chaknith 在 IronXL 和 IronBarcode 上工作。他對 C# 和 .NET 擁有深厚的專業知識,幫助改進了軟體並支持客戶。他從用戶互動中得到的見解有助於改善產品、文檔和整體體驗。
準備好開始了嗎?
Nuget 下載 5,167,857 | Version: 2025.11 剛發表