Cómo usar seguimiento de OcrProgress en C#

Cómo utilizar el seguimiento del progreso en C# con IronOCR

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

IronOCR ofrece un evento para suscribirse y seguir el progreso de la operación de lectura de OCR (Reconocimiento Óptico de Caracteres). Estas propiedades ofrecen información valiosa sobre el progreso, duración y estado de finalización del trabajo de OCR, permitiendo a las aplicaciones monitorear y reportar efectivamente el proceso de OCR.

como-encabezado:2(Inicio rápido: Suscríbete a OcrProgress y lee PDF)

Este ejemplo muestra cuán fácilmente puedes monitorear el progreso de OCR con IronOCR: suscríbete a su evento incorporado OcrProgress y obtén retroalimentación instantánea (porcentaje, páginas completadas, total de páginas) mientras lees un PDF. Son unas pocas líneas para comenzar.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronOCR con el gestor de paquetes NuGet

    PM > Install-Package IronOcr

  2. Copie y ejecute este fragmento de código.

    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. Despliegue para probar en su entorno real

    Empieza a utilizar IronOCR en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


Ejemplo de seguimiento del progreso

Al evento OcrProgress se puede suscribir para recibir actualizaciones de progreso sobre el proceso de lectura. 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. Gessler, Universidad Estatal de Iowa.

: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
Actualización de progreso

Información del evento

  • ProgressPercent: Representa el progreso del trabajo de OCR como un porcentaje de las páginas completadas. Rango de 0 a 100.
  • TotalPages: Indica el número total de páginas siendo procesadas por el motor OCR.
  • PagesComplete: Especifica el número de páginas donde la lectura de OCR ha sido completamente finalizada. Este conteo puede aumentar gradualmente a medida que las páginas son procesadas.
  • Duration: Representa la duración total del trabajo de OCR, indicando el tiempo tomado para completar todo el proceso. Se mide en formato TimeSpan. Este tiempo se actualiza cada vez que el evento se dispara.
  • StartTimeUTC: Denota la fecha y hora cuando el trabajo de OCR comenzó, representado en formato de Tiempo Universal Coordinado (UTC).
  • EndTimeUTC: Representa la fecha y hora cuando el trabajo de OCR fue completado al 100% en formato UTC. Esta propiedad es nula mientras el OCR aún está en progreso y se completa una vez que el proceso de OCR ha terminado.

Preguntas Frecuentes

¿Cómo puedo rastrear el progreso de una tarea OCR en C#?

Puedes rastrear el progreso de una tarea OCR en C# suscribiéndote al evento OcrProgress en IronOCR. Este evento proporciona actualizaciones sobre el porcentaje de finalización, duración y número de páginas procesadas.

¿Cuál es el papel del evento OcrProgress en las operaciones de OCR?

El evento OcrProgress en IronOCR permite a los desarrolladores recibir actualizaciones en tiempo real sobre el estado de la tarea OCR, incluyendo el porcentaje de progreso, duración total, tiempos de inicio y fin, y el total de páginas procesadas.

¿Qué información proporciona la propiedad ProgressPercent?

La propiedad ProgressPercent en IronOCR indica el progreso de la tarea OCR como un porcentaje, proporcionando una visión clara de cuánto de la tarea está completada, en un rango de 0 a 100.

¿Cómo obtengo la duración total de un proceso OCR?

Puedes obtener la duración total de un proceso OCR accediendo a la propiedad Duration en IronOCR, la cual se actualiza cada vez que se activa el evento OcrProgress, reflejando el tiempo total del proceso.

¿Puedo determinar cuándo una tarea OCR empieza y termina?

Sí, IronOCR proporciona las propiedades StartTimeUTC y EndTimeUTC, que denotan las horas de inicio y finalización de la tarea OCR en formato UTC, respectivamente.

¿Cómo manejo múltiples páginas durante el procesamiento OCR?

En IronOCR, puedes manejar múltiples páginas usando las propiedades TotalPages y PagesComplete para rastrear el número total de páginas procesadas y las páginas que han sido completamente procesadas.

¿Cuál es un ejemplo práctico de uso del seguimiento de progreso en OCR?

Un ejemplo práctico implica suscribirse al evento OcrProgress mientras se procesa un documento de muestra titulado 'Experiences in Biodiversity Research: A Field Course.' Esto demuestra cómo rastrear el progreso, duración y el estado de finalización en IronOCR.

Chaknith Bin
Ingeniero de Software
Chaknith trabaja en IronXL e IronBarcode. Tiene un profundo conocimiento en C# y .NET, ayudando a mejorar el software y apoyar a los clientes. Sus conocimientos derivados de las interacciones con los usuarios contribuyen a mejores productos, documentación y experiencia en general.
¿Listo para empezar?
Nuget Descargas 5,167,857 | Version: 2025.11 recién lanzado