Additional OCR Language Packs
IronOCR supports 125 international languages, but only English is installed within IronOCR as standard.
Additional Language packs may be easily added to your C#, VB or ASP .NET project via NuGet or as DLLs which can be downloaded and added as project references.
Code Examples
International Language Example
using IronOcr;
var ocr = new IronTesseract();
// Set the OCR to use Chinese Simplified
ocr.Language = OcrLanguage.ChineseSimplified;
using (var input = new OcrInput())
{
// Add an image to be processed
input.AddImage("img/chinese.gif");
// Optional: Enhance the input by deskewing or denoising the image
// input.Deskew();
// input.DeNoise();
// Process the image and retrieve the result
var result = ocr.Read(input);
// Store the recognized text in a string
string testResult = result.Text;
// Save the recognized text to a file since the console might not display Unicode characters properly
result.SaveAsTextFile("chinese.txt");
}Imports IronOcr
Private ocr = New IronTesseract()
' Set the OCR to use Chinese Simplified
ocr.Language = OcrLanguage.ChineseSimplified
Using input = New OcrInput()
' Add an image to be processed
input.AddImage("img/chinese.gif")
' Optional: Enhance the input by deskewing or denoising the image
' input.Deskew();
' input.DeNoise();
' Process the image and retrieve the result
Dim result = ocr.Read(input)
' Store the recognized text in a string
Dim testResult As String = result.Text
' Save the recognized text to a file since the console might not display Unicode characters properly
result.SaveAsTextFile("chinese.txt")
End UsingVertically Written Language Example
Dictionaries tuned for vertically written languages. Use 'Vertical' Variant of Korean and Japanese OcrLanguage.
using IronOcr;
var ocr = new IronTesseract();
// Set the OCR to use Japanese Vertical language
ocr.Language = OcrLanguage.JapaneseVertical;
using (var input = new OcrInput(@"images\image.png"))
{
// Process the image and get the OCR result
var result = ocr.Read(input);
// Output the recognized text to the console
Console.WriteLine(result.Text);
}Imports IronOcr
Private ocr = New IronTesseract()
' Set the OCR to use Japanese Vertical language
ocr.Language = OcrLanguage.JapaneseVertical
Using input = New OcrInput("images\image.png")
' Process the image and get the OCR result
Dim result = ocr.Read(input)
' Output the recognized text to the console
Console.WriteLine(result.Text)
End UsingCustom Language Example
For using any Tesseract .traineddata language file you have downloaded or trained yourself.
using IronOcr;
var ocr = new IronTesseract();
// Use a custom Tesseract language file
ocr.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata");
using (var input = new OcrInput(@"images\image.png"))
{
// Process the image and get the OCR result
var result = ocr.Read(input);
// Output the recognized text to the console
Console.WriteLine(result.Text);
}Imports IronOcr
Private ocr = New IronTesseract()
' Use a custom Tesseract language file
ocr.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata")
Using input = New OcrInput("images\image.png")
' Process the image and get the OCR result
Dim result = ocr.Read(input)
' Output the recognized text to the console
Console.WriteLine(result.Text)
End UsingMultiple Language Example
More than one language at a time.
using IronOcr;
var ocr = new IronTesseract();
// Set the primary language to English
ocr.Language = OcrLanguage.English;
// Add Arabic as a secondary language
ocr.AddSecondaryLanguage(OcrLanguage.Arabic);
// Add any number of languages
using (var input = new OcrInput(@"images\multi-lang.pdf"))
{
// Process the PDF and get the OCR result
var result = ocr.Read(input);
// Output the recognized text to the console
Console.WriteLine(result.Text);
}Imports IronOcr
Private ocr = New IronTesseract()
' Set the primary language to English
ocr.Language = OcrLanguage.English
' Add Arabic as a secondary language
ocr.AddSecondaryLanguage(OcrLanguage.Arabic)
' Add any number of languages
Using input = New OcrInput("images\multi-lang.pdf")
' Process the PDF and get the OCR result
Dim result = ocr.Read(input)
' Output the recognized text to the console
Console.WriteLine(result.Text)
End UsingFaster Language Example
Dictionaries tuned for speed. Use the 'Fast' variant of any OcrLanguage.
using IronOcr;
var ocr = new IronTesseract();
// Set the OCR to use the fast variant of English
ocr.Language = OcrLanguage.EnglishFast;
using (var input = new OcrInput(@"images\image.png"))
{
// Process the image and get the OCR result
var result = ocr.Read(input);
// Output the recognized text to the console
Console.WriteLine(result.Text);
}Imports IronOcr
Private ocr = New IronTesseract()
' Set the OCR to use the fast variant of English
ocr.Language = OcrLanguage.EnglishFast
Using input = New OcrInput("images\image.png")
' Process the image and get the OCR result
Dim result = ocr.Read(input)
' Output the recognized text to the console
Console.WriteLine(result.Text)
End UsingHigher Accuracy Detail Language Example
Dictionaries tuned for accuracy, but much slower results. Use the 'Best' variant of any OcrLanguage.
using IronOcr;
var ocr = new IronTesseract();
// Set the OCR to use the best variant of French
ocr.Language = OcrLanguage.FrenchBest;
using (var input = new OcrInput(@"images\image.png"))
{
// Process the image and get the OCR result
var result = ocr.Read(input);
// Output the recognized text to the console
Console.WriteLine(result.Text);
}Imports IronOcr
Private ocr = New IronTesseract()
' Set the OCR to use the best variant of French
ocr.Language = OcrLanguage.FrenchBest
Using input = New OcrInput("images\image.png")
' Process the image and get the OCR result
Dim result = ocr.Read(input)
' Output the recognized text to the console
Console.WriteLine(result.Text)
End UsingHow To Install OCR Language Packs
Additional OCR Language packs are available for download below. Either
- Install the NuGet package. Search NuGet for IronOCR Languages.
- Or download the "ocrdata" file and add it to your .NET project in any folder you like. Set
CopyToOutputDirectory = CopyIfNewer
Download OCR Language Packs
- Ancient Greek Language Pack ἙλληνικήZip NuGet
- Assamese Language Pack অসমীযাZip NuGet
- Breton Language Pack brezhonegZip NuGet
- Canadian Aboriginal Alphabet Language Pack Canadian First NationsZip NuGet
- Cebuano Language Pack BisayaZip NuGet
- Cherokee Language Pack ᏣᎳᎩ ᎦᏬᏂᎯᏍᏗZip NuGet
- Cyrillic Language Pack Cyrillic scriptsZip NuGet
- Devanagari Language Pack NagairZip NuGet
- Faroese Language Pack føroysktZip NuGet
- Filipino Language Pack The PhilippinesZip NuGet
- Financial Language Pack Spreadsheets & NumbersZip NuGet
- Fraktur Language Pack Generic FrakturZip NuGet
- Frankish Language Pack FrenkiskZip NuGet
- Gurmukhi Alphabet Language Pack GurmukhīZip NuGet
- Hangul Language Pack Hangul AlphabetZip NuGet
- Inuktitut Language Pack ᐃᓄᒃᑎᑐᑦZip NuGet
- Javanese Language Pack basa JawaZip NuGet
- Malay Language Pack bahasa MelayuZip NuGet
- Malayalam Language Pack മലയാളംZip NuGet
- Maori Language Pack te reo MāoriZip NuGet
- MICR Language Pack Magnetic Ink Character RecognitionZip NuGet
- Middle English Language Pack English (1100-1500 AD)Zip NuGet
- Middle French Language Pack Moyen FrançaisZip NuGet
- Myanmar Language Pack BurmeseZip NuGet
- Northern Kurdish Language Pack KurmanjiZip NuGet
- Occitan Language Pack occitanZip NuGet
- Quechua Language Pack Runa SimiZip NuGet
- Scottish Gaelic Language Pack GàidhligZip NuGet
- Syriac Language Pack SyrianZip NuGet
- Tibetan Language Pack Tibetan StandardZip NuGet
- Tonga Language Pack faka TongaZip NuGet
Help
If the language you are looking to read is not available in the list above, please get in touch with us. Many other languages are available on request.
Priority on production resources is given to IronOCR licensees, so please also consider licensing IronOCR for access to your desired language pack.
Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.