显示长度的正数和负数

显示长度的正数和负数

我知道 \the\somelength 会显示 \somelength 的值。但我如何知道该长度的当前延伸是多少?

例如,如果我有

\setlength{\footnotesep}{10 pt plus 5pt minus 3pt}

并且稍后我想显示加号和减号以便进行调试,我该怎么做?

第一个反应是使用\showthe。我试过了,但它没有给出正负值。最小的例子:

\documentclass{report}
\begin{document}
\scrollmode
\typeout{The footnotesep is \the\footnotesep,}
\showthe\footnotesep
\setlength{\footnotesep}{10 pt plus 5pt minus 3pt}
\typeout{The footnotesep is now \the\footnotesep,}
\showthe\footnotesep
\end{document}

控制台上输出:

`The footnotesep is 6.65pt,
 > 6.65pt.
 l.6 \showthe\footnotesep

 The footnotesep is now 10.0pt,
 > 10.0pt.
 l.9 \showthe\footnotesep

`

但我想看到正值和负值。

答案1

您无法显示plusminus的组件,\footnotesep因为它不能包含它们,而是由

\newdimen\footnotesep

这使得它刚性长度范围。

如果你

\setlength{\footnotesep}{10pt plus 5pt minus 3pt}

LaTeX 将设置为 10pt(这解释了) 和 排版 的\footnotesep结果)。如果您在序言中执行设置,则会收到错误。\showthe\footnotesepplus 5pt minus 3ptNo \begin{document}

答案2

您可能正在考虑以下构造(\Footnotesep在示例中)。由于名称未保留给其他构造(\dimen),因此结果符合预期。

\documentclass{report}
\begin{document}
\scrollmode
\typeout{The footnotesep is \the\footnotesep,}
\showthe\footnotesep

\the\footnotesep
%\setlength{\footnotesep}{10 pt plus 5pt minus 3pt}
\newlength\Footnotesep
\setlength{\Footnotesep}{10pt plus 5pt minus 3pt}
\typeout{The footnotesep is now \the\Footnotesep,}

B
\showthe\Footnotesep

\the\Footnotesep

\end{document}

相关内容