12

\MakeUppercase does not capitalize Cyrillic fonts.

I am trying to create a custom document class which would write the section titles in upper case. For this purpose I use the solution provided in this answer. However, it turned out that the \MakeUppercase command capitalizes the Latin letters only. All the Cyrillic letters are left intact. It looks like this:

FIRST SECTION - Первый раздел

This is true not only for the section headings, but for a regular text also. So the command:

\MakeUppercase{English text. Русский текст.}

produces the following output:

ENGLISH TEXT. Русский текст.

What could be the reason for such behaviour and how can I solve this issue?

Note: I use pdflatex to compile the document.


Here is the simplest working example to start with:

\documentclass{letter}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\begin{document}
\MakeUppercase{English Text. Русский текст.}
\end{document}
  • 1
    you don't mention which engine you're using: the mechanism is different according to whether you're using (pdf)latex or (xe|lua)tex. (also, people's lives are improved if you provide a minimal working example. it's trivial in this case, but they're the ones helping you. – wasteofspace Nov 17 '13 at 16:04
11

Add the line

\usepackage[T2A,T1]{fontenc}

in the preamble so to have the right font encodings.

Thus the MWE

\documentclass{letter}
\usepackage[utf8]{inputenc}
\usepackage[T2A,T1]{fontenc}
\usepackage[russian]{babel}
\begin{document}
\MakeUppercase{English Text. Русский текст.}
\end{document}

yields the desired result

enter image description here

P.S.: The T1 option is not needed if you use only Russian in your document.

  • T1 is not needed if only Russian is used. Strangely enough, the russian option issues a message saying that T2A is used, but probably something goes wrong; loading the fontenc indeed solves the issue. – egreg Nov 17 '13 at 16:44
  • @egreg, I know. I added T1 seeing that OP uses also English. Thanks (as usual) for your remarks. – karlkoeller Nov 17 '13 at 16:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.