Spec-Zone.ru › LaTeX

Заглавные и строчные буквы

Описание:

\uppercase{text}
\lowercase{text}
\MakeUppercase{text}
\MakeLowercase{text}

Изменение регистра символов. Примитивные команды TeX \uppercase и \lowercase по умолчанию работают только с 26 буквами a–z и A–Z. Команды LaTeX \MakeUppercase и \MakeLowercase также изменяют регистр символов, доступных через команды, такие как \ae или \aa. Команды \MakeUppercase и \MakeLowercase устойчивы, но имеют изменяемые аргументы (см. \protect).

Эти команды не изменяют регистр букв, используемых в имени команды внутри текста. Однако они изменяют регистр всех остальных латинских букв внутри аргумента текста. Таким образом, \MakeUppercase{Let $y=f(x)$ выводит ‘LET Y=F(X)’. Еще один пример: имя окружения также будет изменено, поэтому \MakeUppercase{\begin{tabular} ... \end{tabular}} выведет ошибку, так как первая половина будет изменена на \begin{TABULAR}.

LaTeX использует одну и ту же фиксированную таблицу для изменения регистра на протяжении всего документа. Используемая таблица предназначена для кодировки шрифтов T1; это хорошо работает со стандартными шрифтами TeX для всех латинских алфавитов, но может вызвать проблемы при использовании других алфавитов.

Чтобы изменить регистр текста, полученного из макроса внутри текста, необходимо выполнить развёртывание. Здесь \Schoolname выводит ‘МАТЕМАТИЧЕСКИЙ КОЛЛЕДЖ’.

\newcommand{\schoolname}{College of Mathematics}
\newcommand{\Schoolname}{\expandafter\MakeUppercase
                           \expandafter{\schoolname}}

Пакет textcase добавляет некоторые недостающие функции стандартных команд LaTeX \MakeUppercase и \MakeLowerCase.

Чтобы сделать заглавной только первую букву слов, можно использовать пакет mfirstuc.

Обработка всех правил изменения регистра, указанных в Unicode, например, для нелатинских письменностей, — это гораздо более сложная задача, чем любая задуманная в исходном TeX и LaTeX. Она была реализована в пакете expl3 по состоянию на 2020 год. Статья «Изменение регистра: от примитивов TeX до алгоритма Unicode» (Джозеф Райт, TUGboat 41:1, https://tug.org/TUGboat/tb41-1/tb127wright-case.pdf) предоставляет хорошее обзорное описание этой темы, как в прошлом, так и в настоящем.

© 2007–2018 Karl Berry
Public Domain Software
http://latexref.xyz/Upper-and-lower-case.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API