我正在尝试将页眉更改为scrbook
包含大写字母。为此,我使用 ,fancyhdr
它为我提供了所有章节所需的外观。
不幸的是,参考书目中的页眉存在问题,仍然包含小写字母。
我怎样才能改变它,使它看起来像这样?
我知道如果使用everythinkbook
而不是它,scrbook
效果会很好,但由于我正在使用 scrbook 中的许多其他东西,所以这确实是一个不需要的选项。通常scrpage2
建议与 KOMA 脚本一起使用,但我不知道如何在页眉中使用大写字母。
这是我的代码
\begin{filecontents}{mybib.bib}
@article{Smith2000,
author = {Smith, John},
journal = {Journal A},
number = {1},
pages = {1--38},
title = {{Science}},
volume = {1},
year = {2000}
}
\end{filecontents}
\documentclass{scrbook}
\usepackage{biblatex}
\usepackage{blindtext}
\bibliography{mybib}
\usepackage{fancyhdr}
\makeatletter{%
\fancyhead[L]{\leftmark}%
\fancyhead[R]{\thepage}%
}\makeatother
\pagestyle{fancy}
\begin{document}
\chapter{Test}
\blindtext[5]
\cite{Smith2000}
\printbibliography
\blindtext[5]
\end{document}
答案1
如果不想从 切换fancyhdr
到scrpage2
,请添加\MakeUppercase
的参数\fancyhead
。
\begin{filecontents}{mybib.bib}
@article{Smith2000,
author = {Smith, John},
journal = {Journal A},
number = {1},
pages = {1--38},
title = {{Science}},
volume = {1},
year = {2000}
}
\end{filecontents}
\documentclass{scrbook}
\usepackage{biblatex}
\usepackage{blindtext}
\bibliography{mybib}
\usepackage{fancyhdr}
\fancyhead[L]{\MakeUppercase{\leftmark}}
\fancyhead[R]{\thepage}
\pagestyle{fancy}
\begin{document}
\chapter{Test}
\blindtext[5]
\cite{Smith2000}
\printbibliography
\blindtext[5]
\end{document}
答案2
以下是使用该包的方法scrpage2
:
\usepackage[automark]{scrpage2}
\clearscrheadings
\ohead{\MakeUppercase{\headmark}}
\pagestyle{scrheadings}
使用相同的方法来fancyhdr
获取大写字母。
要禁用倾斜使用:(\addtokomafont{pagehead}{\normalfont}
感谢 lockstep)
答案3
另一个适用于该babel
软件包的解决方案是 Markus Kohm 的以下代码
\newcommand*{\MarkBoth}{}
\let\MarkBoth\markboth
\renewcommand*{\markboth}[2]{\MarkBoth{\MakeUppercase{#1}}{\MakeUppercase{#2}}}