我正在为我的课程做笔记,如果能在页脚中包含课程编号和日期就好了,我知道使用 fancyhdr 的自定义页脚(每个页面、章节的自定义页脚),但我希望找到功能类似于 \centering 和 \raggedleft 的东西
例如 \newfooter{session 1, 4 October 2021},它将被添加到此命令之后的所有页面,直到下一个命令 \newfooter{sessoin 2, 5 October 2021}
我认为改变 fancyhdr 风格会成功就像在这个问题中,但我不知道如何将其应用到我的情况中。
注意我正在使用书籍文档类,并且我不想干扰它的页眉(以及每章开头的页脚)
感谢您的帮助
答案1
您可以使用以下内容作为起点。它定义了\newfooter
要更新的\customfooter
宏,该宏在除起始章节页面之外的页面的页脚中设置。由于页脚与页面样式绑定,因此页面可能需要随每次发送(翻转)\newfooter
。因此,加星标的版本\newfooter*
不会发出\clearpage
,而\newfooter
(未加星标的版本)会发出。
\documentclass{book}
\usepackage{fancyhdr}
\usepackage{lipsum}
\fancyhf{}% Clear header/footer
\fancyfoot[C]{\customfooter}
\fancyhead[LE,OR]{\thepage}
\pagestyle{fancy}
\newcommand{\customfooter}{}% Define \customfooter to be empty at the start
\NewDocumentCommand{\newfooter}{s m}{%
\IfBooleanF{#1}{\clearpage}% \newfooter* doesn't \clearpage
\renewcommand{\customfooter}{#2}% Store new footer
}
\begin{document}
\chapter{First chapter}
\newfooter*{Session 1, 4 October 2021}% Stay on current page
\lipsum[1-4]
\newfooter{Session 2, 5 October 2021}% Just to new page
\lipsum[5-10]
\end{document}
概念很简单:\customfooter
在页脚中使用,并\customfooter
使用提供的参数进行更新\newfooter
。