printbibliography 用 fancyhdr 弄乱附录标题

printbibliography 用 fancyhdr 弄乱附录标题

我遇到了一个问题,将标题\printbibliography设置fancyhdr为居中“参考书目”,但当我们到达附录时它不会改变。我尝试通过\fancyhead[CE,CO]{Appendix}在附录之前使用来解决这个问题。但是,现在我的参考书目最后一页有标题“附录”,而第一页附录有标题“参考书目”。我的代码如下:

主要的:

\backmatter 

    \thispagestyle{empty}
    \pagenumbering{roman}

    \renewcommand{\baselinestretch}{1.0}
    \printbibliography
    
    % without the following line, the header of all appendix pages is "Bibliography"
    \fancyhead[CE,CO]{Appendix}
    \input{./misc/appendix}

附录:

\appendix
\renewcommand{\thesection}{\Alph{section}}

\renewcommand{\thelstlisting}{\Alph{section}.\arabic{lstlisting}}
\chapter*{Appendices}
\addcontentsline{toc}{chapter}{Appendices}


\section{Program Source Code}
...

可视化:

在此处输入图片描述

(更新的问题):要重现的最少代码:

\documentclass[12pt,twoside,appendixprefix]{scrbook}
\usepackage[utf8]{inputenc}

\usepackage{fancyhdr}
\pagestyle{fancy}

\fancypagestyle{plain}{%
  \fancyhf{}
\fancyhead[CE,CO]{\leftmark}
  \renewcommand{\headrulewidth}{0.5pt}
  \renewcommand{\footrulewidth}{0.5pt}
}

\usepackage{appendix}

\begin{document}
    \frontmatter
    
    \mainmatter
        \chapter{Structure of the Paper}
    
    \backmatter 
        \appendix
        \chapter*{Appendices}
    
        \fancyhead[CE,CO]{Appendix}
         \addcontentsline{toc}{chapter}{Appendices}
        
        \section{Functional Tests Source Code}
\end{document}


答案1

KOMA 脚本包有自己的模块来处理页眉/页脚,称为scrlayer。 使用fancyhdr明确地作为替代方案导致在内发出警告.log

scrbook 类警告:同时使用“fancyhdr”包
不建议使用带有 KOMA-Script 类的 (scrbook)。
(scrbook) 我建议使用
(scrbook)包“scrlayer”或“scrlayer-scrpage”,因为
(scrbook) 他们支持 KOMA-Script 课程。
(scrbook)使用‘fancyhdr’类‘scrbook’的几个特性
(scrbook)如选项“headsepline”、“footsepline”或命令
(scrbook)'\MakeMarkcase' 和命令 '\setkomafont' 和
(scrbook)'\addtokomafont' 用于页面样式元素需要
(scrbook)明确的用户干预才能起作用。
(scrbook)尽管如此,使用请求
(scrbook)包“fancyhdr”在输入第 5 行。

无论如何,如果您仍想使用fancyhdr,则需要重新发布适当的页面样式,因为章节的第一页的处理方式不同。由于plain页面样式已被(重新)定义为使用\leftmark,并且\leftmark不会随 而改变\chapter*,因此您需要手动更改它,或者更改该页面的页面样式(类似于fancy):

\appendix
\chapter*{Appendices}
\addcontentsline{toc}{chapter}{Appendices}

\fancyhead{}%
\fancyhead[CE,CO]{Appendix}
\thispagestyle{fancy}

答案2

如果其他人遇到同样的问题并感到疑惑 - 问题出在chapter*命令上。我设法像这样修复它:

\appendix
\renewcommand\thechapter{}
\renewcommand\thesection{\arabic{section}}
\chapter{Appendix}

相关内容