页脚中的水平线忽略了边距

页脚中的水平线忽略了边距

如何在页脚中添加一条横跨整个页面宽度的水平线?

\renewcommand{\footrulewidth}{0.4pt}

给出的只是位于边缘内的一条线。

答案1

您需要更新\footrule提供的宏fancyhdr. 这是一种可能的方法:

\makeatletter
\def\footrule{{\if@fancyplain\let\footrulewidth\plainfootrulewidth\fi
    \vskip-\footruleskip\vskip-\footrulewidth
    \leavevmode\rlap{\hspace*{-2in}\rule{2\paperwidth}{\footrulewidth}}
    \vskip\footruleskip}}
\makeatother

在常规文档中,这应该向左跳跃(负\hspace)足够远以落在页面边框之外,然后设置一个\rule宽度为\footrulewidth纸张宽度两倍的水平(确保它跨越整个页面)。

下面是一个工作示例,展示了常规页面和第 2 页上更新后的页脚规则(上述更改是在文档中间完成的,但您需要将其添加到序言中以对文档产生全局影响):

在此处输入图片描述

\documentclass{article}
\usepackage{fancyhdr}% http://ctan.org/pkg/fancyhdr
\pagestyle{fancy}
\renewcommand{\footrulewidth}{.4pt}
\begin{document}
Stuff

\clearpage

\makeatletter
\def\footrule{{\if@fancyplain\let\footrulewidth\plainfootrulewidth\fi
    \vskip-\footruleskip\vskip-\footrulewidth
    \leavevmode\rlap{\hspace*{-2in}\rule{2\paperwidth}{\footrulewidth}}
    \vskip\footruleskip}}
\makeatother

Stuff
\end{document}

相关内容