如何删除标题行中的大写字母?

如何删除标题行中的大写字母?

我的文档类别是“书籍”,章节和部分标题在标题行中以大写形式显示。我怎样才能将其改为小写?我附上一张图片以进行说明。我还希望图片中的“第 2 章”显示为“2”。

第一的

编辑:我希望我的标题看起来像这样:

第二

这里,5 表示第 5 章,Hints 表示章节名称。

答案1

我对您的目标的解释如下:

  • 不要以大写形式呈现章节级和节级标题字符串

  • 去掉“Chapter”前缀字符串,并删除章节号和节号后的“点”

  • 不要将章节和节标题字符串排版为倾斜的字体形状。

book文档类中,低级宏\ps@headings控制着标题行的构造方式。为了实现您的目标,需要按如下方式修改此宏(在序言中插入代码):

\usepackage{etoolbox} % for '\patchcmd' macro
\makeatletter
\patchcmd{\ps@headings}{\MakeUppercase}{}{}{}
\patchcmd{\ps@headings}{\MakeUppercase}{}{}{}
\patchcmd{\ps@headings}{\MakeUppercase}{}{}{}
\patchcmd{\ps@headings}{\@chapapp\ \thechapter. \ }{\thechapter\ }{}{}
\patchcmd{\ps@headings}{\@chapapp\ \thechapter. \ }{\thechapter\ }{}{}
\patchcmd{\ps@headings}{\thesection. \ }{\thesection\ }{}{}
\patchcmd{\ps@headings}{\slshape}{}{}{}
\patchcmd{\ps@headings}{\slshape}{}{}{}
\patchcmd{\ps@headings}{\slshape}{}{}{}
\makeatother
\pagestyle{headings} % re-load the modified code of `\ps@headings`

附录回答楼主的后续问题:为了使\tableofcontents\listoftables\listoffigures命令以及thebibliographytheindex环境生成的标头信息不受 的作用影响\MakeUppercase,还需要运行以下五条指令两次

\patchcmd{\tableofcontents}{\MakeUppercase}{}{}{}
\patchcmd{\listoffigures}{\MakeUppercase}{}{}{}
\patchcmd{\listoftables}{\MakeUppercase}{}{}{}
\patchcmd{\thebibliography}{\MakeUppercase}{}{}{}
\patchcmd{\theindex}{\MakeUppercase}{}{}{}

相关内容