\thispagestyle{plain} 没有效果

\thispagestyle{plain} 没有效果

我使用包的默认设置,并在类型为 的文档开头fancyhdr调用。由于我有一些大图表和表格,我想隐藏文档中各个页面的页眉。为此,我尝试在包含图表之前立即调用,但是,这似乎没有任何效果。另一方面,调用确实有效;然后文档其余部分的页眉就会消失。我花了很长时间试图解决这个问题,我遗漏了什么?\pagestyle{fancy}report\thispagestyle{plain}\pagestyle{plain}

编辑:该问题似乎仅出现在包含表格或图形(即浮动对象)的页面上。我在这里发现了一个可能的重复问题:

如何删除带有大图片的页面上的页眉?

添加定义

\lhead{\iffloatpage{}{\small\normalfont\TheTitle}}
\fancyfoot{}
\fancyhead[RO,LE]{\iffloatpage{}{\thepage}}
\renewcommand{\headrulewidth}{\iffloatpage{0pt}{0.4pt}}

序言似乎解决了这个问题,虽然我不太明白这里发生了什么......

编辑:另一个重复的是

抑制仅包含一个大表的单个页面的页码?

floatpag针对这种情况推荐了该套件。

解决方案:我尝试了这个floatpag包,但它似乎导致我的表格中的行距发生变化,所以我决定使用已接受答案中的方法。因此,我在序言中定义了一种自定义的花式样式:

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{\MakeUppercase{\thechapter. #1 }}{}}
\renewcommand{\sectionmark}[1]{\markright{\thesection~#1}{}}
\fancyhf{}
\fancyhead[RO]{\iffloatpage{}{\bfseries\rightmark}}
\fancyhead[LE]{\iffloatpage{}{\bfseries\leftmark}}
\fancyfoot[C]{\iffloatpage{}{\thepage}}
\renewcommand{\headrulewidth}{\iffloatpage{0pt}{0.5pt}}
\renewcommand{\footrulewidth}{\iffloatpage{0pt}{0pt}}
\addtolength{\headheight}{0.5pt}

答案1

你可以使用\iffloatpage为非浮动页面指定一种行为,并为浮动页面指定不同的行为;语法是

\iffloatpage{value for float page}{value for other pages}

例如,使用

\renewcommand{\headrulewidth}{\iffloatpage{0pt}{0.4pt}}

您要声明非浮动页面中主规则的厚度0.4pt为 ,以及浮动页面的厚度为0pt(即无规则)。

完整示例:

\documentclass{article}
\usepackage[a6paper]{geometry}% just for the example
\usepackage{fancyhdr}
\pagestyle{fancy}

\fancyhf{}
\renewcommand{\headrulewidth}{\iffloatpage{0pt}{0.4pt}}
\renewcommand{\footrulewidth}{\iffloatpage{0pt}{0.4pt}}
\fancyhead[C]{\iffloatpage{}{Top header}}
\fancyfoot[C]{\iffloatpage{}{Bottom header}}

\begin{document}

Text

\begin{figure}[p]% [p] was used for the example only
\centering
A
\caption{A test figure in a float page}
\end{figure}

\end{document}

在此处输入图片描述

还请注意,我使用了更现代的语法\fancyhead[<options>],而不是\fancyfoot[<options>]“旧”的语法\Xhead\Xfoot

答案2

这是一个有效的例子

\documentclass{article}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
\chead{Top header}
\cfoot{Bottom header}
\begin{document}

\thispagestyle{empty}

Empyt first page


\pagebreak

Decorated second page


\end{document}

那么问题是:你做了什么不同的事情?当然,当我们看到你的 MnonWE 时,我们可能就会知道。;)

相关内容