将标题栏中的词汇表标题设为大写

将标题栏中的词汇表标题设为大写

我使用report带有 twoside 参数的类。我用它fancyhdr来配置页眉/页脚。

我正在使用该glossaries包生成词汇表。词汇表是我文档中唯一一个标题未在页眉中以大写形式出现的章节。

以下是我打印词汇表的方法:

\clearpage
\phantomsection
\addcontentsline{toc}{chapter}{Glossary}

\printglossary

我对索引使用了完全相同的代码,而且标题效果很好。

有什么方法可以强制将标题改为大写吗?

编辑:我创建了一个MWE:

\documentclass{report}

\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhead{}
\fancyhead[LE,RO]{\slshape \nouppercase{\rightmark}}
\fancyhead[LO,RE]{\slshape \leftmark}

\fancypagestyle{plain}{
    \fancyhead{}
    \fancyhead[LE,RO]{\slshape \rightmark}
    \fancyhead[LO,RE]{\slshape \leftmark}
}

\usepackage{glossaries}
\makeglossaries

\newglossaryentry{test}{
  name=test,
  description={test}
}

\begin{document}

\chapter{Introduction}
Ceci est un \gls{test}. 

\printglossary

\end{document}

答案1

您可以使用ucmark包选项:

\documentclass{report}
\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhead{}
\fancyhead[LE,RO]{\slshape \nouppercase{\rightmark}}
\fancyhead[LO,RE]{\slshape \leftmark}

\fancypagestyle{plain}{
    \fancyhead{}
    \fancyhead[LE,RO]{\slshape \rightmark}
    \fancyhead[LO,RE]{\slshape \leftmark}
}

\usepackage[ucmark]{glossaries}
\makeglossaries

\newglossaryentry{test}{
  name=test,
  description={test}
}

\begin{document}

\chapter{Introduction}
Ceci est un \gls{test}. 

\printglossary

\end{document}

在此处输入图片描述

另一个选择是直接重新定义\glossarymark(事实上,这就是该ucmark选项的作用):

\makeatletter
\renewcommand{\glossarymark}[1]{%
   \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}
\makeatother

相关内容