OCR bleibt bei großen PDFs mit EnglishFast Zweitsprache hängen

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

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)
$vbLabelText   $csharpLabel

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)
$vbLabelText   $csharpLabel

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.

WarnungDie Hängung erzeugt keine Ausnahme und keinen Protokolleintrag. Die Ausführung stoppt einfach bei ocr.Read(), sodass eine feststeckende Anfrage das einzige Symptom ist, auf das man achten sollte.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 6,175,195 | Version: 2026.7 gerade veröffentlicht
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronOcr
Führen Sie ein Beispiel aus und beobachten Sie, wie Ihr Bild zu durchsuchbarem Text wird.