How to use Custom Language with Tesseract

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

When it comes to optical character recognition (OCR), you sometimes need to deal with custom languages, specialized scripts, or ciphers. To read an input image containing a custom language, the Tesseract engine must be provided with training data for that specific language. This data is stored in a special .traineddata file.

While the complex process of creating (training) this file is done using Tesseract's own tools, IronOCR fully supports using these custom language files. This lets you apply your trained model to decipher and read text from any input. In this how-to guide, we'll showcase how to load and use a custom .traineddata file with IronOCR.

Get started with IronOCR

Nutzen Sie IronOCR heute kostenlos in Ihrem Projekt.

Erster Schritt:
green arrow pointer


Custom Language with Tesseract

To use a custom language with Tesseract, we must first load our .traineddata file by calling the UseCustomTesseractLanguageFile method. This is an essential step, as this file contains all the training data that allows Tesseract to recognize the custom language's unique characters.

Afterward, we load our input document just as we would for a regular OCR operation. In this instance, we are loading a PDF containing custom language paragraphs using LoadPdf.

Finally, we use the Read method to extract the text from the input. The result can then be printed to the console or, as the example shows, saved (piped) to a text file for reference.

Input

We'll use this sample PDF, which contains text in our custom language, as the input.

We'll be using this custom language .traindata for our example.

Code Example

:path=/static-assets/ocr/content-code-examples/how-to/ocr-custom-language.cs
using IronOcr;
using System;
using System.IO;

var ocrTesseract = new IronTesseract();

// Load the traineddata file for the custom language
ocrTesseract.UseCustomTesseractLanguageFile("AMGDT.traineddata");

using var ocrInput = new OcrInput();
// Load the PDF containing text in the custom language
ocrInput.LoadPdf("custom.pdf");

var ocrResult = ocrTesseract.Read(ocrInput);

// Print text to the console
Console.WriteLine("--- OCR Result ---");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("------------------");

// Pipe text to a .txt file
string outputFilePath = "ocr_output.txt";
File.WriteAllText(outputFilePath, ocrResult.Text);

Console.WriteLine($"\nSuccessfully saved text to {outputFilePath}");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Output

OCR Output text

This output shows the result from our custom language model. As you can see, by providing the correct training data, IronOCR successfully deciphered the text, and the result is in plain English. Additionally, this is the txt output generated by the code.

Häufig gestellte Fragen

Welchen Zweck hat die Verwendung einer benutzerdefinierten Sprache mit Tesseract in IronOCR?

Die Verwendung einer benutzerdefinierten Sprache mit Tesseract in IronOCR ermöglicht die Erkennung und Extraktion von Text aus Bildern oder PDFs, die spezielle, standardmäßig nicht unterstützte Schriftsysteme oder Sprachen enthalten. Dies wird durch das Laden einer benutzerdefinierten `.traineddata`-Datei erreicht, die die erforderlichen Trainingsdaten für diese Sprache enthält.

Wie lade ich eine benutzerdefinierte Sprachtrainingsdatei in IronOCR?

Sie können in IronOCR eine benutzerdefinierte Sprachtrainingsdatei mithilfe der Methode `UseCustomTesseractLanguageFile` laden. Dieser Schritt ist entscheidend, da er der Tesseract-Engine die Trainingsdaten bereitstellt, die zum Erkennen der einzigartigen Zeichen der benutzerdefinierten Sprache benötigt werden.

Welche Schritte sind nötig, um mit IronOCR eine OCR-Texterkennung für ein Bild mit einer benutzerdefinierten Sprache durchzuführen?

Um mit IronOCR eine OCR-Texterkennung für ein Bild mit einer benutzerdefinierten Sprache durchzuführen, laden Sie zunächst die C#-Bibliothek herunter, initialisieren Sie die OCR-Engine, laden Sie die Trainingsdaten für die benutzerdefinierte Sprache mit `UseCustomTesseractLanguageFile`, laden Sie das Eingabebild mit `LoadImage` und extrahieren Sie schließlich den Text mit der `Read`-Methode.

Kann IronOCR PDFs mit benutzerdefiniertem Text verarbeiten?

Ja, IronOCR kann PDFs mit Text in benutzerdefinierten Sprachen verarbeiten. Sie können die PDF-Datei mit der Methode `LoadPdf` laden und anschließend mit der Methode `Read` den Text anhand der bereitgestellten Trainingsdaten für die benutzerdefinierte Sprache extrahieren.

Was ist eine `.traineddata`-Datei im Kontext von Tesseract und IronOCR?

Eine `.traineddata`-Datei ist eine Datendatei, die von Tesseract OCR verwendet wird und die Trainingsdaten für eine bestimmte Sprache enthält. Sie ermöglicht es der OCR-Engine, Zeichen dieser Sprache zu erkennen und zu verarbeiten, und kann in IronOCR zur Arbeit mit benutzerdefinierten Sprachen verwendet werden.

Muss ich für jede benutzerdefinierte Sprache in IronOCR eine eigene `.traineddata`-Datei erstellen?

Nein, Sie müssen nicht für jede benutzerdefinierte Sprache eine eigene `.traineddata`-Datei erstellen. Sie können vorhandene `.traineddata`-Dateien verwenden. Wird eine bestimmte Sprache jedoch nicht unterstützt, müssen Sie möglicherweise mithilfe der Tesseract-Tools eine solche Datei erstellen.

Welche Ausgabeformate werden von IronOCR bei der Verwendung benutzerdefinierter Sprachen unterstützt?

IronOCR unterstützt verschiedene Ausgabeformate bei der Verwendung benutzerdefinierter Sprachen, beispielsweise die Ausgabe von Klartext, der in der Konsole angezeigt oder in einer Textdatei gespeichert werden kann. Der extrahierte Text kann bei Bedarf weiterverarbeitet werden.

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 5,044,537 | Version: 2025.11 gerade veröffentlicht