对于我的家庭作业,我通常使用该fancyhdr
包创建一个标题,其中包含组(A、B、C 等)、作业标题、我的姓名 + 学生编号和日期。除此之外,我几乎总是使用该geometry
包来调整页边距。
出现的问题是边距似乎每页都在变化,或者更具体地说:第一页的边距与其他页的边距不同。为了说明这个问题,请考虑以下 MWE。
\documentclass[a4paper]{article}
\usepackage{fancyhdr,lipsum} % lipsum for filler text
\usepackage[margin=4.4cm]{geometry}
\begin{document}
\lhead{Group, homework corrector\\$\,$\\}
\rhead{Homework title\\Name (student number)\\\today}
\pagestyle{fancy}
\lipsum[1-5] % filler text
\newpage
\lipsum[6-10] % filler text
\newpage
\lipsum[11-15] % filler text
\end{document}
这里[a4paper]
似乎有必要不让geometry
改变纸张的尺寸,lipsum
用于填充,并且有 3 页写着表明第二页和第三页具有相同的页边距,与第一页的页边距不同。问题不应该来自fancyhdr
和之间的冲突geometry
,因为当后者被注释掉时也会出现这种情况。
现在我想实现两件事,以及相应的问题:
- 如上所述,如何确保整个文档的边距一致?
\thispagestyle{fancy}
当使用而不是 时,如何让第二页和后续页面的文本从第一页页眉的起始高度开始\pagestyle{fancy}
?
我曾尝试通过重新定义 的长度来解决第二点\headheight
,但我觉得这有点草率,因为无法确保页眉在第一页上添加的高度恰好是该高度。以下是我尝试解决第二个问题的方法:
\documentclass[a4paper]{article}
\usepackage{fancyhdr,lipsum} % lipsum for filler text
\usepackage[margin=4.4cm]{geometry}
\begin{document}
\lhead{Group, homework corrector\\$\,$\\}
\rhead{Homework title\\Name (student number)\\\today}
\thispagestyle{fancy}
\lipsum[1-5] % filler text
\newpage
\setlength{\headheight}{-3\baselineskip}
\lipsum[6-10] % filler text
\newpage
\lipsum[11-15] % filler text
\end{document}
答案1
添加headheight=35pt
选项geometry
(showframe
这里只是为了清楚地显示结果)。
\documentclass[a4paper]{article}
\usepackage{fancyhdr,lipsum} % lipsum for filler text
\usepackage[margin=4.4cm,headheight=35pt,showframe]{geometry}
\begin{document}
\lhead{Group, homework corrector\\$\,$\\}
\rhead{Homework title\\Name (student number)\\\today}
\pagestyle{fancy}
\lipsum[1-5] % filler text
\newpage
\lipsum[6-10] % filler text
\newpage
\lipsum[11-15] % filler text
\end{document}
你是如何得到这个的35pt
?如果我不添加该选项,在日志文件中(以及在终端上)我会收到警告
Package Fancyhdr Warning: \headheight is too small (12.0pt):
Make it at least 34.54448pt.
We now make it that large for the rest of the document.
This may cause the page layout to be inconsistent, however.