OCR se cuelga en grandes PDFs con el idioma secundario EnglishFast

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

IronOCR puede detenerse a mitad del procesamiento en grandes PDFs cuando OcrLanguage.EnglishFast se añade como un idioma secundario. No se lanza ninguna excepción y la ejecución nunca se reanuda, por lo que la solicitud parece ejecutarse indefinidamente.

Execution stops at the ocr.Read() call. No exception is thrown and no error is logged.

El bloqueo es desencadenado por el modelo EnglishFast cuando se encuentra en la lista de idiomas secundarios en Windows. Se ha reproducido en nuestras pruebas a través de IronOCR 2025.12.3, 2026.1.2, 2026.2.1, y 2026.3.3 a través de 2026.7.2. Hasta que se publique una versión corregida, trate cualquier versión en ese rango como potencialmente afectada. Reordenar EnglishFast en relación con los otros idiomas secundarios no ayuda.

Solución

1. Encuentre la configuración del idioma secundario

Localice cualquier llamada a AddSecondaryLanguage que pase OcrLanguage.EnglishFast en su configuración OCR.

// This line causes the hang on large PDFs
ocr.AddSecondaryLanguage(OcrLanguage.EnglishFast);
// This line causes the hang on large PDFs
ocr.AddSecondaryLanguage(OcrLanguage.EnglishFast);
' This line causes the hang on large PDFs
ocr.AddSecondaryLanguage(OcrLanguage.EnglishFast)
$vbLabelText   $csharpLabel

2. Elimine EnglishFast y mantenga English como primario

Elimine o comente la llamada problemática. Establezca OcrLanguage.English como el idioma principal para que se preserve la calidad del reconocimiento en inglés, y deje sus otros idiomas secundarios como están, no se ven afectados.

// ocr.AddSecondaryLanguage(OcrLanguage.EnglishFast);
var ocr = new IronTesseract
{
    Language = OcrLanguage.English
};
ocr.AddSecondaryLanguage(OcrLanguage.Hindi);
ocr.AddSecondaryLanguage(OcrLanguage.Marathi);
// ocr.AddSecondaryLanguage(OcrLanguage.EnglishFast);
var ocr = new IronTesseract
{
    Language = OcrLanguage.English
};
ocr.AddSecondaryLanguage(OcrLanguage.Hindi);
ocr.AddSecondaryLanguage(OcrLanguage.Marathi);
Imports IronOcr

Dim ocr As New IronTesseract With {
    .Language = OcrLanguage.English
}
ocr.AddSecondaryLanguage(OcrLanguage.Hindi)
ocr.AddSecondaryLanguage(OcrLanguage.Marathi)
$vbLabelText   $csharpLabel

Eliminar EnglishFast elimina el modelo rápido de inglés, pero mantener OcrLanguage.English como el idioma principal mantiene la cobertura para documentos con texto en inglés significativo.

3. Vuelva a ejecutar el PDF afectado

Procese el documento nuevamente. Ahora debería completarse en todas las páginas sin detenerse.

AdvertenciaEl bloqueo no produce ninguna excepción ni entrada de registro. La ejecución simplemente se detiene en ocr.Read(), por lo que una solicitud atascada es el único síntoma a observar.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
¿Listo para empezar?
Nuget Descargas 6,175,195 | Versión: 2026.7 recién lanzado
Still Scrolling Icon

¿Aún desplazándote?

¿Quieres una prueba rápida? PM > Install-Package IronOcr
ejecuta una muestra y observa cómo tu imagen se convierte en texto buscable.