# Typesetting non-Latin languages

The LaTeX and pdfLaTeX engines were originally intended for typesetting English and languages using Latin-based alphabets. Even though LaTeX and pdfLaTeX currently load `\usepackage[utf8]{inputenc}` as default, these engines still won't be able to support the full range of unicode characters, without the help of specific packages.

Therefore if you need to include some non-Latin languages in your LaTeX document, but are facing compile errors like "Unicode character xxxx not set up for use with LaTeX", you would need to load some specific packages and/or change your project compiler, so that the necessary fonts and language hyphenation modules can be loaded.

## Greek, Polish, Vietnamese and Languages using Cyrillic Script (e.g. Russian, Bulgarian, Ukrainian, Serbian

pdfpdfLaTeX can still be used, if you load the babel package with the required language option, e.g. `\usepackage[polish]{babel}`. See our [Babel documentation](https://www.overleaf.com/learn/latex/International_language_support#Babel) for more details.

## Other Non-Latin Languages and more control over fonts

For other non-Latin languages e.g. Arabic, Farsi, Hebrew, Indic languages (including Hindi, Tamil, etc), it is recommended to use [the XeLaTeX or LuaLaTeX](https://docs.overleaf.com/getting-started/recompiling-your-project/selecting-a-tex-live-version-and-latex-compiler#changing-the-compiler) compilers, together with the [babel](https://www.overleaf.com/learn/latex/Multilingual_typesetting_on_Overleaf_using_babel_and_fontspec) or [polyglossia](https://www.overleaf.com/learn/latex/Multilingual_typesetting_on_Overleaf_using_polyglossia_and_fontspec) packages. These packages also provide more control over the fonts that can be used with each language, and support modern OTF or TTF fonts.

For [Chinese](https://www.overleaf.com/learn/latex/Chinese), [Japanese](https://www.overleaf.com/learn/latex/Japanese) and [Korean](https://www.overleaf.com/learn/latex/Korean) languages, there are dedicated classes and packages that follow popular typesetting conventions in each language.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.overleaf.com/troubleshooting-and-support/typesetting-non-latin-languages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
