更新

更新

在下面的 MWE 中,我想定义一个尺寸,并且当要打印脚注时,usep蓝色边距(uhsepufsep)是否等于它,并且(绿色)等于它的一半。否则,和应该等于。请注意,距离应该从、和测量。也不应该移动。ubsepuhsepubsepusepheadrulefootnoterulefootruleheadrulefootrule

经过评论,我已经使用 、 和 实现了基本布局(uhsep= ubsep= usep):headsepbottomfootskip

%pages without footnotes
\def\usep{1cm}
\newdimen\hsep  \setlength{\hsep}{\dimexpr\usep+.3\baselineskip\relax}
\newdimen\fskip \setlength{\fskip}{\dimexpr\usep+.9\baselineskip\relax}
\newdimen\bmar \setlength{\bmar}{2.5cm} \addtolength{\bmar}{\dimexpr\usep-30pt+.9\baselineskip\relax}
\newgeometry[left=3.5cm, right=1.5cm, top=2.5cm, bottom=\bmar, headsep=\hsep, footskip=\fskip, showframe]{geometry}

使用 GIMP 对 MWE 进行后期处理

\documentclass[a4paper,titlepage,11pt,twoside,openright]{report}

\usepackage[left=3.5cm, right=1.5cm, top=2.5cm, bottom=2.5cm, showframe]{geometry}
\usepackage{lipsum}
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
\usepackage[pagestyles,explicit]{titlesec}

\makeatletter
\renewcommand\setheadrule[1]{%
  \ifdim#1=\z@ \let\makeheadrule\@empty
  \else \def\makeheadrule{{\color{red}\rule[-.3\baselineskip]{\linewidth}{#1}}} \fi}
\renewcommand\setfootrule[1]{%
  \ifdim#1=\z@ \let\makefootrule\@empty
  \else \def\makefootrule{\color{red}\rule[.9\baselineskip]{\linewidth}{#1}} \fi}
\makeatother

\newpagestyle{main}{ \headrule \footrule
 \sethead[][][\color{red}\sffamily Chapter title] %even
 {\color{red}\sffamily Section title}{}{} %odd
 \setfoot[\color{red}\sffamily\thepage][][\color{red}\sffamily Degree] %even
 {\color{red}\sffamily Theis title}{}{\color{red}\sffamily\thepage} %odd
} 

\begin{document}

%Change seps, skips...

\pagestyle{main}
\lipsum[1-2]
\footnote{This is a footnote}
\lipsum[3-4]
\footnote{This is another footnote}
\lipsum[5-7]

\end{document}

解决方案使用 titlesec 和 geometry,它提供了一个命令\updategeometry{<tbmargin>}{<sep>},其中<tbmargin>是顶部和底部边距,根据主要头部和脚部规则进行测量,是从规则到文本的分离。

\def\chapv{1cm} \def\usep{0cm}
\def\tbmargin{\dimexpr\usep+\chapv\relax}
\def\hsep{\dimexpr.3\baselineskip+\usep\relax}
\def\fskip{\dimexpr.9\baselineskip+\usep\relax}

\newcommand\updategeometry[2]{
 \def\chapv{#1} \def\usep{#2}
 \newgeometry{left=3.5cm, right=1.5cm, top=\tbmargin, bottom=\tbmargin, headsep=\hsep, footskip=\fskip}
}

答案1

这是对评论中修改后的问题的回答 - 而不是对你原始问题的回答。我认为原始问题远非直截了当,即使可以解决。

我认为这是对的,但我不确定。您需要将\ulength您提到的尺寸设置为所需值的一半。geometry然后用于设置headsep和用于管理页眉和页脚:footskipfancyhdr

\documentclass[a4paper,titlepage,11pt,twoside,openright]{report}
\usepackage{geometry}
\usepackage{lipsum}
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
\usepackage[pagestyles,explicit]{titlesec}
\newlength{\ulength}
\setlength{\ulength}{5mm}
\geometry{left=3.5cm, right=1.5cm, top=2.5cm, bottom=2.5cm, footskip=2\ulength, headheight=30pt, headsep=\ulength, showframe}

\usepackage{fancyhdr}
\fancypagestyle{main}{%
  \fancyhf{}%
  \fancyhf[loh]{\color{red}\sffamily Section title}%
  \fancyhf[reh]{\color{red}\sffamily Chapter title}%
  \fancyhf[lof]{\color{red}\sffamily Thesis title}%
  \fancyhf[rof,lef]{\color{red}\sffamily\thepage}%
  \fancyhf[ref]{\color{red}\sffamily Degree}%
  \renewcommand{\footrulewidth}{.4pt}%
  \renewcommand{\headrule}{%
    \color{red}\rule[\ulength]{\headwidth}{\headrulewidth}}%
  \renewcommand{\footrule}{%
    \color{red}\rule[\dimexpr-2\ulength]{\headwidth}{\footrulewidth}\vss}}

\begin{document}

%Change seps, skips...

\pagestyle{main}
\lipsum[1-2]
\footnote{This is a footnote}
\lipsum[3-4]
\footnote{This is another footnote}
\lipsum[5-7]

\end{document}

头脚距离相等规则

请注意,我之所以使用,fancyhdr是因为它更容易一致地布局页面。此外,fancyhdr如果由于空间不足等原因出现问题,它会告诉您。

我过去常常geometry设置footskip等,因为如果您使用该包,则需要使用它来更改页面布局。否则,它不知道您已经更改了内容,并且在计算长度时无法考虑这些更改。因此,即使您指定了“本机”尺寸(例如)footskip,也请确保使用geometry

更新

为了让章节和节标题自动包含在页眉中,我会做类似下面的事情。部分原因是我不太熟悉它,titlesec也从未将它用于页眉和页脚。我主要使用它是fancyhdr因为它会告诉您页眉或页脚的大小是否太小,并告诉您需要多大。这对于适当地布局页面很有用。但是,我看不出有什么理由不能用titleps和 drop来替代它fancyhdr

\documentclass[a4paper,titlepage,11pt,twoside,openright]{report}
\usepackage{geometry}
\usepackage{lipsum}
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
\usepackage{titlesec}
\newlength{\ulength}
\setlength{\ulength}{5mm}
\geometry{left=3.5cm, right=1.5cm, top=2.5cm, bottom=2.5cm, footskip=2\ulength, headheight=30pt, headsep=\ulength}

\usepackage{fancyhdr}
\fancypagestyle{main}{%
  \fancyhf{}%
    \fancyhf[loh]{\color{red}\sffamily \rightmark}%
  \fancyhf[reh]{\color{red}\sffamily \leftmark}%
  \fancyhf[lof]{\color{red}\sffamily Thesis title}%
  \fancyhf[rof,lef]{\color{red}\sffamily\thepage}%
  \fancyhf[ref]{\color{red}\sffamily Degree}%
  \renewcommand{\footrulewidth}{.4pt}%
  \renewcommand{\headrule}{%
    \color{red}\rule[\ulength]{\headwidth}{\headrulewidth}}%
  \renewcommand{\footrule}{%
    \color{red}\rule[\dimexpr-2\ulength]{\headwidth}{\footrulewidth}\vss}}


\begin{document}

%Change seps, skips...

\pagestyle{main}
\renewcommand{\chaptermark}[1]{%
    \markboth{#1}{}}
\renewcommand{\sectionmark}[1]{%
    \markright{#1}}
\chapter{Chapter title}
\lipsum[1-2]
\footnote{This is a footnote}
\section{Section title}
\lipsum[3-4]
\footnote{This is another footnote}
\lipsum[5-12]

\end{document}

带标记的页眉和页脚

相关内容