OCR bleibt bei großen PDFs mit EnglishFast Zweitsprache hängen
IronOCR kann bei großen PDFs während der Verarbeitung ins Stocken geraten, wenn OcrLanguage.EnglishFast als Zweitsprache hinzugefügt wird. Es wird keine Ausnahme ausgelöst, und die Ausführung wird nie fortgesetzt, sodass die Anfrage scheinbar endlos läuft.
Execution stops at the ocr.Read() call. No exception is thrown and no error is logged.
Der Stillstand wird durch das EnglishFast Modell ausgelöst, wenn es in der Liste der Zweitsprachen unter Windows steht. Es wurde in unseren Tests mit IronOCR 2025.12.3, 2026.1.2, 2026.2.1 und 2026.3.3 bis 2026.7.2 reproduziert. Bis eine behobene Version veröffentlicht wird, sollten alle Releases in diesem Bereich als potenziell betroffen betrachtet werden. Ein Ändern der Reihenfolge von EnglishFast im Vergleich zu den anderen Zweitsprachen hilft nicht.
Lösung
1. Finden Sie die Zweitsprachenkonfiguration
Lokalisieren Sie jeden Aufruf von AddSecondaryLanguage, der OcrLanguage.EnglishFast in Ihrer OCR-Einrichtung übergibt.
// 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. Entfernen Sie EnglishFast und behalten Sie Englisch als Hauptsprache
Löschen Sie den fehlerhaften Aufruf oder kommentieren Sie ihn aus. Setzen Sie OcrLanguage.English als Hauptsprache, damit die englische Erkennungsqualität erhalten bleibt, und lassen Sie Ihre anderen Zweitsprachen unangetastet, sie bleiben unberührt.
// 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)
Das Entfernen von EnglishFast entfernt das schnelle englische Modell, aber das Beibehalten von OcrLanguage.English als Hauptsprache gewährleistet die Abdeckung für Dokumente mit bedeutendem englischen Text.
3. Führen Sie das betroffene PDF erneut aus
Verarbeiten Sie das Dokument erneut. Es sollte jetzt alle Seiten ohne Unterbrechung abschließen.

