\tableofcontents 上的 \firstmark 产生了意外的结果

\tableofcontents 上的 \firstmark 产生了意外的结果

所以我正在处理一个相当小的乳胶文档,无法解释页面\firstmark上的行为table of content

如果我错了请告诉我,但根据我的理解,\firstmark当前页面的第一个部分标题是这个。我认为在\tableofcontents页面上应该是这个CONTENTS

table of content页眉中,它变成了这样CONTENTSCONTENTS,而在页面本身中,它变成了什么都没有。CONTENTS标题左侧的无关紧要。我可以轻松删除它,但我只是把它留在那里以获得最少的源代码。

我得到了这个可以重现此行为的小 .tex 源:

\documentclass{article}

\usepackage{fancyhdr}

\pagestyle{fancy}

\fancyhead[R]{\firstmark}

\begin{document}
    \tableofcontents

    foo

    \firstmark

    bar
\end{document}

这是我从中得到的 pdf: 编译给定的 .tex 源后得到的 PDF

正如您在右上角的标题中看到的,这里不CONTENTSCONTENTS只有一个 和CONTENTS,而您应该在和CONTENTS之间看到,但是这里什么都没有。foobar

我也将此来源复制到LaTeX 基础,以排除这是我的计算机出现错误的可能性。

有人可以向我解释一下这种行为吗?

答案1

不要将低级\firstmark与 latex 一起使用。在 latex 中,标记分为两部分,您可以使用 和 访问左侧和右侧部分\leftmark\rightmark标记应仅用于页眉和页脚,而不应用于文本正文,因为它们仅在页面发送出去时才可靠。

\documentclass{article}

\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhf{}
\fancyhead[R]{Leftmark: \leftmark, rightmark: \rightmark, firstmark: \firstmark}

\begin{document}
 \markboth{AAAA}{BBBB}

 some text
\end{document}

在此处输入图片描述

相关内容