在下面的例子中,我在标题中有一个带有降部和规则的单词。我将其设置\lineskip
为非常大,以便在\lineskiplimit
到达时使其明显可见。
\documentclass{article}
\usepackage{calc}
\usepackage{fancyhdr}
\usepackage[margin = 1.0in, headheight = 34.0pt]{geometry}
\pagestyle{fancy}
\renewcommand{\headrule}{}
\fancyhead[C]
{%
\fontsize{12.0pt}{4.0pt}%
\selectfont%
\setlength{\lineskip}{20pt}%
fjord%
\\
\rule{\textwidth}{1.0pt}%
}
\begin{document}
\newlength{\sep} % Vertical distance between fjord and rule in header.
\setlength{\sep}{4.0pt - 1.0pt - \depthof{fjord}}
(baselineskip in header) - (rule height) - (depth of fjord) = \the\sep
\end{document}
从视觉上看,我认为我们可以看到\lineskiplimit
已经达到了。但是,根据我的计算(见输出),肯定没有达到。我可能计算错误,或者我可能没有完全理解\lineskiplimit
。为什么会出现不一致的情况,到底发生了什么?
答案1
您的计算是正确的,如果不是fancyhdr
在标题中的代码末尾添加了支柱的话。
我把代码改成了
\fancyhead[C]
{%
\fontsize{12.0pt}{4.0pt}%
\selectfont%
\setlength{\lineskip}{20pt}%
fjord%
\\
\rule{\textwidth}{1.0pt}%
\showthe\ht\strutbox
}
控制台上显示的消息
> 2.79999pt.
\f@ncyoch ...idth }{1.0pt}\showthe \ht \strutbox
\strut
其中\strut
要处理的静止图像可见。因此高度不是1pt
,而是2.79999pt
和\lineskip
开始起作用。