OCR se cuelga en grandes PDFs con el idioma secundario EnglishFast
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)
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)
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.

