在撰写报告时,我喜欢使用fancyhdr
包作为标题,使用appendix
包作为附录,但我遇到了兼容性的小问题。请考虑以下情况:
\documentclass{report}
\usepackage[toc,page]{appendix}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead{} % clear the headers
\fancyhead[L]{\nouppercase{\leftmark}}
\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter\ -- #1}{}}
\begin{document}
\chapter{The first chapter}
The main body text.
\newpage
This second page has a header.
\begin{appendices}
\chapter{The first appendix}
Appendix text.
\newpage
This second page has a header.
\end{appendices}
\end{document}
如果排版上述内容,就会发现附录的第二页有一个标题,上面写着“A 章 - 第一个附录”。
如何改变上述代码,使其改为显示“附录 A - 第一个附录”(主体中的标题保持不变)?
非常感谢。
答案1
替换\chaptername
为\@chapapp
:
\makeatletter
\renewcommand{\chaptermark}[1]{\markboth{\@chapapp\ \thechapter\ -- #1}{}}
\makeatother
例子:
\documentclass{report}
\usepackage[toc,page]{appendix}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead{} % clear the headers
\fancyhead[L]{\nouppercase{\leftmark}}
\makeatletter
\renewcommand{\chaptermark}[1]{\markboth{\@chapapp\ \thechapter\ -- #1}{}}
\makeatother
\begin{document}
\chapter{The first chapter}
The main body text.
\newpage
This second page has a header.
\begin{appendices}
\chapter{The first appendix}
Appendix text.
\newpage
This second page has a header.
\end{appendices}
\end{document}