我现在已经开始使用该\fancyhdr
包,使用下一个命令:
\newgeometry{left=1.5in,right=1.5cm,top=3cm,bottom=2.5cm,headheight=1cm}
(\begin{document}
输入标题页前后;3厘米的顶部边距是为了让页眉看起来好看,顶部不要太多)
\pagestyle{fancy}
%\fancyhf{}
\fancyheadoffset{0cm}
%\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
%\renewcommand{\headheight}{13.6pt}
\fancyfoot[R]{\thepage}
\fancypagestyle{plain}{%
\fancyhf{}%
\fancyfoot[R]{\thepage}
\renewcommand{\headrulewidth}{0pt}
\newgeometry{left=1.5in,right=1.5cm,top=2cm,bottom=2.5cm,headheight=1cm}
}
现在的问题是,您可能已经注意到,3 厘米的上边距对于带有页眉的页面来说是理想的。但是,对于采用普通样式的页面(例如,新章节标题页),3 厘米的空间就太大了。
我怎样才能轻松解决这个问题?
梅威瑟:
\documentclass[11pt]{report}
\usepackage{geometry}
\usepackage{lipsum}
\usepackage{fancyhdr} %mooiere hoofding en voettekst
\begin{document}
\tableofcontents
\pagestyle{fancy}
\fancyheadoffset{0cm}
\renewcommand{\footrulewidth}{0pt}
\fancyfoot[R]{\thepage}
\fancypagestyle{plain}{%
\fancyhf{}%
\fancyfoot[R]{\thepage}
\renewcommand{\headrulewidth}{0pt}
\newgeometry{top=2cm}
}
\chapter{Inleiding}
\lipsum
\end{document}
答案1
不要用困难的方式去做这件事。\newgeometry
这样使用是行不通的——至少,除非你现在使用比现在更多的技巧。(考虑到执行此操作的命令将开始另一个新页面,你打算如何恢复原始几何图形?)
看来你titlesec
已经在使用。[不幸的是,它已连同其他一些有用且需要的东西一起从 MWE 中删除。但是,它仍然存在于修订历史中。最小化你自己的代码的一个好处是,你可以确保它真正展示了你想要帮助解决的问题。]
titleps
如果您正在使用,您确实应该考虑使用titlesec
。如果您稍等片刻,我希望 Bernard 会说明最佳做法。它与 的配合方式titlesec
是fancyhdr
永远不会发生的,因为它是由不同的作者编写的。还请注意,这titletoc
是三部曲中的第三个包。我倾向于避免使用它们,但如果您正在使用它们,您不妨充分利用它们。
据我所知,最好的方法是适当格式化章节标题。特别是,您可以在章节标题前使用负垂直空间来消除部分 3 厘米间隙。我在这里使用了 2 厘米 - 调整以适应。
您还应该最小化分段命令格式中的间距,并使用\titlespacing
其可拉伸的快捷方式。或者您应该以老式的方式(即明确地)在垂直间距中包含拉伸。我在这里选择了少打字的方式。
我还删除了页脚中我认为是虚假的第二页码。显然,如果您真的想要两个,您可以将其放回去。
下面的代码是由问题中的 MWE 和您之前发布的极其非最小的代码拼凑而成的。
尽量将页面样式等保留在序言中。如果您需要其他样式,请在此处定义它,然后根据需要手动应用它。(通常不需要。)
在这种情况下,我只是坚持使用fancy
和plain
。plain
通过删除指令,可以简化样式\newgeometry
,正如我所说,这在这里不起作用。
这意味着您拥有适用于所有样式的页面的标准页面几何形状,但您的章节标题的样式我认为是您想要的。这也会捕获目录,并且应该捕获诸如参考书目或索引之类的内容。除非你在那里做的事情完全不同。这是因为\chapter
并\chapter*
调用plain
pagestyle 和诸如\tableofcontents
invoke之类的命令\chapter*
。同样,除非你明确要求不同的东西。
我简化了标题的代码,因为我没有您的字体,而且我看不出有任何特别的理由保留颜色以用于演示。但请注意,您应尽可能将格式和内容分开,因为这样可以轻松确保一致性,提供更大的灵活性,并且在出现问题时更容易排除故障。(当然,它们总是会出错。无论您编写的代码多么干净,这种情况都会发生。嗯,据我所知。整洁只是让您更容易找出 sod's law 在您这个特定场合的具体影响。)
\documentclass[11pt]{report}
\usepackage[left=1.5in,right=1.5cm,top=3cm,bottom=2.5cm,headheight=1cm]{geometry}
\usepackage{kantlipsum}% more philosophically sophisticated filler text
\usepackage{fancyhdr}
\pagestyle{fancy}% the default page style for the document
\fancyheadoffset{0cm}
\renewcommand{\footrulewidth}{0pt}
\fancyhf[cf]{}% unless you really want the page number in the footer twice...
\fancyfoot[R]{\thepage}
\fancypagestyle{plain}{% not a place to change the geometry of the page...
\fancyhf{}%
\fancyfoot[R]{\thepage}%
\renewcommand{\headrulewidth}{0pt}%
}
\usepackage[explicit]{titlesec}
\titleformat{\chapter}[display]% where possible avoid spacing here which should be handled by \titlespacing and should include **strech**; remove code which does nothing; colour and fonts-I-don't-have removed for demo
{\bfseries\Huge}% format applies to label and body of title
{\filright\thechapter}% the label
{1ex}% vertical separation
{\titlerule\filleft #1}% code before body of title
[\titlerule]% code after body of title
\titlespacing{\chapter}{0cm}{\dimexpr\topskip-20mm}{*6}[0pt]% spacing: change the 20mm if you want the titles of chapters raised by a different amount; note the *6 which includes stretch - may need adjusting as I just eye-balled something roughly like the output the original code produced
\begin{document}% no need to define page styles or change geometry etc. within the document itself
\tableofcontents
\chapter{Inleiding}
\kant[1-10]
\chapter{Next}
\kant[11-15]
\end{document}
答案2
我已编辑您的帖子,使其包含一个明显最小化的示例。您发布的 MWE 无法在我的计算机上编译,原因有很多,最主要的是我没有您的字体。一旦最小化,问题就会很快显现出来。由于我无法编译您提供的示例,我只能推测您的文档中没有其他内容会干扰此解决方案;但这就是 MWE 的意义所在:让您缩小问题,直到拥有最小的、可演示该问题的编译文档。
当您plain
使用重新定义页面样式时fancyhdr
,您说:
\newgeometry{...top=2cm...}
省略号表示您重置了其他各种参数。不过,我认为这是问题所在。如果您改为说:
\newgeometry{...top=0cm...}
我想你会得到你想要的。有了top=2cm
,你会得到这个:
但是有了top=0cm
,你就会得到这个:
当然,您的其他格式不在这里出现,但不需要这样;我们正在尝试解决一个非常有限的问题。
希望有所帮助。