A photo of a French menu, a German contract, a sign in Thai — text in the world doesn't come in one language, and good OCR shouldn't either. Multilingual OCR lets you pull editable text out of images written in dozens of scripts, from accented Latin alphabets to right-to-left Arabic and dense Chinese characters. This guide explains how it works, where the tricky parts are, and how to get clean results whatever the language.
What makes OCR multilingual
A single OCR model isn't trained on every writing system at once. Instead, the engine loads a language pack — a set of character shapes and a dictionary for a specific language. Choosing the right pack is what lets the same tool read Spanish one minute and Japanese the next. Our image translator and image to text tools support 20+ languages this way, so the first and most important step is simply telling the tool which language it's looking at.
Why does that matter so much? The dictionary resolves ambiguous shapes toward real words, and the character set tells the engine which glyphs to expect at all. Run French through an English-only model and every accented letter becomes a guess.
The main families of scripts
Different writing systems pose different challenges, and it helps to know which family you're dealing with.
Latin-based languages with accents
Spanish, French, German, Portuguese, Vietnamese and many others use the familiar Latin alphabet plus diacritics — accents, cedillas, umlauts, tildes. These are among the easiest to OCR, but only if the right language is selected so the accented characters are recognised rather than stripped. The shapes are otherwise close to English, so image-quality tips from our improve OCR accuracy guide apply directly.
Cyrillic and Greek
Russian, Ukrainian, Bulgarian, Greek and related languages use distinct alphabets that the engine handles well with the correct language pack. The main risk is confusion between letters that look Latin but aren't, so again, setting the language is what keeps the engine on track.
Right-to-left scripts
Arabic, Hebrew, Persian and Urdu read right to left, and Arabic in particular joins letters into connected forms that change shape depending on position. This makes layout and character segmentation harder. Our dedicated walkthrough on extracting Arabic text from images covers the specific habits that improve accuracy here.
CJK: Chinese, Japanese and Korean
These languages use thousands of characters rather than a small alphabet, and Japanese mixes several scripts at once. CJK OCR is a different beast with its own quirks, which our guide to OCR for Chinese, Japanese and Korean explores in detail.
How to extract multilingual text cleanly
The workflow is the same across languages; only the language setting changes.
- Capture a sharp, well-lit image. Quality matters even more for non-Latin scripts, where dense or connected characters leave less room for error.
- Crop to the text block in a single language where possible. Mixed-language pages are harder to read in one pass.
- Select the correct language in the tool. This is the highest-impact choice you'll make.
- Extract the text with image to text, or use the image translator if you also want it in another language.
- Proofread against the original, watching accents, diacritics and direction.
Handling pages with more than one language
Real documents mix languages — an English abstract above a Chinese body, a bilingual menu, captions in two scripts. If your tool reads one language at a time, the cleanest approach is to crop each language region separately and run them individually, then reassemble. This avoids the engine trying to apply one dictionary to text it doesn't fit. For short snippets, it's often quicker to extract the dominant language and hand-correct the rest.
Quality tips that matter more across languages
Everything that helps English OCR helps multilingual OCR more, because non-Latin scripts are less forgiving:
- Resolution. Dense characters and small diacritics need pixels. Capture at higher DPI than you would for plain English print.
- Contrast and preprocessing. Clean, dark-on-light text is essential; our preprocessing guide applies to every language.
- Avoid decorative type. Stylised foreign-language signage is doubly hard — unusual font and unfamiliar script.
- Keep lines straight. Skew hurts segmentation, which matters most for connected and stacked scripts.
From extraction to translation
Often the reason you're OCRing foreign text is to understand it. Once the text is extracted, translating it is the natural next step. Our image translator is built for exactly this, and our guide on translating text from an image walks through doing it in two quick steps — read the text out of the picture, then translate the clean result.
Frequently asked questions
How many languages can OCR handle?
Our tools support 20+ languages spanning Latin-based scripts with accents, Cyrillic, Greek, right-to-left scripts like Arabic and Hebrew, and CJK characters. The key is selecting the correct language so the engine loads the right character set and dictionary before it reads.
Do I have to tell the tool which language the image is in?
Yes, and it's the single most important step. The language setting loads the right glyphs and dictionary, which dramatically improves accuracy — especially for accented and non-Latin text. The wrong language is a leading cause of garbled multilingual output.
Can OCR read a document with two languages on the same page?
It can, but accuracy is best when each language is read separately. Crop each language region and run it with its own language setting, then combine the results. For short mixed snippets, extracting the main language and correcting the rest by hand is often fastest.
Will OCR also translate the text for me?
OCR extracts the original text; translation is a separate step. Our image translator combines both so you can go from a foreign-language photo to a translation quickly — see the translate text from an image guide for the workflow.
Whatever the language, start by reading the text out of your image with our free image translator, then translate or edit the clean result.