将重音字符转换为大写的问题

将重音字符转换为大写的问题

该命令\uppercase无法正确处理某些重音字符,例如匈牙利语ő或或、和ű等字符。如果我输入 这样的字符,它可以正常工作,但我想直接将其输入为,因为它多次使用。您能建议一种解决方法吗?łđć\H{o}ő

\documentclass{article}

\usepackage{t1enc}
\usepackage[utf8]{inputenc}

\begin{document}
\uppercase{árvízt\H{u}űr\H{o}ő tükörfúrógép đdłlćc}
\end{document}

在此处输入图片描述

答案1

\uppercase是 TeX 的一个“原语”。如果您改用 LaTeX 宏\MakeUppercase,那么您将轻松实现您的目标。

\usepackage{t1enc}您还应该用替换过时的\usepackage[T1]{fontenc}

在此处输入图片描述

顺便观察一下,的输出\uppercase{ű}ő,这是相当不正确的。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{document}
\texttt{\string\uppercase}:
\uppercase{árvízt\H{u}űr\H{o}ő tükörfúrógép đdłlćc}

\medskip
\texttt{\string\MakeUppercase}:
\MakeUppercase{árvízt\H{u}űr\H{o}ő tükörfúrógép đdłlćc}
\end{document}

相关内容