O TeX dispõe de dois comandos primitivos \uppercase e
\lowercase para mudança de caixa de texto; eles não são muito usados, mas podem causar confusão.
Os dois comandos não expandem o texto atribuído como parâmetro —
o resultado de \uppercase{abc} é ‘ABC’, mas
\uppercase{ é sempre ‘\abc}\abc’, independente do significado de \abc. Os comandos simplesmente interpretam uma tabela de equivalências entre caracteres de caixa alta e baixa. Eles não têm (por exemplo) qualquer juízo matemático, e
\uppercase{About $y=f(x)$}
vai produzir
que, provavelmente, não é o que se deseja.ABOUT $Y=F(X)$
Além disso, \uppercase e \lowercase não lidam muito bem com caracteres fora do alfabeto americano; por exemplo,
\uppercase{ é igual a \ae}\ae.
O LaTeX dispõe dos comandos \MakeUppercase e \MakeLowercase
, que consertam esse problema. Esses comandos são usados nas classes padrão para produzirem títulos de cabeça de página em caixa alta, referentes a capítulos e seções.
Infelizmente \MakeUppercase e \MakeLowercase não resolvem os outros problemas do \uppercase; por exemplo, um título de seção contendo \begin{tabular} …
\end{tabular} vai produzir um título de cabeça de página contendo
\begin{TABULAR}. A solução mais simples para esse problema é usar um comando definido pelo usuário, por exemplo:
\newcommand{\mytable}{\begin{tabular}...
\end{tabular}}
\section{A section title \protect\mytable{}
with a table}
Note que \mytable tem que ser protegido; caso contrário, vai ser expandido e escrito em maiúsculas. Você pode alcançar o mesmo resultado declarando-o com \DeclareRobustCommand, caso em que o
\protect não será necessário.
O pacote textcase de David Carlisle lida com muitos desses problemas de forma transparente. Ele define os comandos \MakeTextUppercase e \MakeTextLowercase que fazem caixa alta ou baixa com as funcionalidades mais sofisticadas dos comandos \Make* padrões do LaTeX, mas sem os problemas mencionados anteriormente. Carregue o pacote com
\usepackage[overload]{textcase} e ele vai redefinir os comandos do LaTeX
serão redefinidos (não os comandos primitivos \uppercase e
\lowercase do TeX), de modo que os títulos de seção e afins não produzam títulos de cabeça de página quebrados.
This question on the Web: http://latex.net.br/faq/FAQ-casechange.html
Do you have any question? Ask on: latex.net.br - we love qood questions!