禁用/切换标题中的小写字母

禁用/切换标题中的小写字母

我正在使用amsart文档类。我想将标题中的文本(例如\author)更改为正常书写,而不是小写。

  • 我如何才能全局更改此设置?也就是说,所有标题(\title、、\author等等\section)中的文本都不使用小写字母。
  • 我如何在本地更改它?也就是说,只在一个地方更改它。例如,如果我在字段中包含我的电子邮件地址\author,我不希望它以小写字母书写。将文本换行到里面\textnormal\textrm不起作用。将其换行到里面是\lowercase可行的,但我认为这不是一个好的解决方案。

答案1

虽然amsart使用小型大写字母作为章节标题,但实际上它使用 (完整) 大写字母作为\author\title。请注意,以大写和小写字母给出的标题参数将产生高度相同的大写字母。

\author以下 MWE 以仅影响、\title和 的方式重新定义了格式\section

\documentclass{amsart}

\usepackage{etoolbox}

\makeatletter
\patchcmd{\@settitle}{\uppercasenonmath\@title}{}{}{}
\patchcmd{\@setauthors}{\MakeUppercase}{}{}{}
\patchcmd{\section}{\scshape}{}{}{}
\makeatother

\begin{document}

\author{Author, A.}
\title{And now for something completely different}
\maketitle

\section{A section}

Some text.

\end{document}

答案2

我不明白为什么amsart如果你想要自定义样式,你会使用。使用amsart基本上只是告诉它你想使用 AMS 样式的一种方式。对我来说,这样做没有意义,但会大大偏离它的风格。如果是我,我会将常规类articleamsmath包一起使用,以利用没有样式的 AMS 类的强大功能,这将使你能够自由使用例如像 这样的包titlingfancyhdrtitlesec用于自定义标题、页眉/页脚和节标题。

相信你重新定义一些类的内部结构(lockstep 会告诉您如何操作),但对我来说这似乎是一种有趣的操作方式。

相关内容