\pagegoal 的问题

\pagegoal 的问题

在页面的开头,\pagegoal=\maxdimen因此\pagegoal-\pagetotal=0pt或有时\maxdimen。所以我测试了\maxdimen,但得到了奇怪的结果(参见MWE)。

是否有一个好的方法可以让页面的剩余空间甚至在页面的开头就得到?

\documentclass{article}

\newlength{\goodguess}
  
\begin{document}
\goodguess=\textheight
\ifdim\pagegoal=\maxdimen
\else
  \goodguess=\dimexpr \pagegoal-\pagetotal\relax
\fi
\the\goodguess

\newpage
\goodguess=\textheight
\ifdim\pagegoal=\maxdimen yes
\else
  \goodguess=\dimexpr \pagegoal-\pagetotal\relax
\fi
\the\goodguess
\end{document}

答案1

\goodguess=\textheight
\ifdim\pagegoal=\maxdimen
\else
  \goodguess=\pagegoal-\pagetotal
\fi
\the\goodguess

这里\goodguess是跳过,但是\textheight是一个维度,因此扩展会继续寻找,plus从而\the\goodguess进行扩展、产生0.0pt,然后才发生分配。

\goodguess=\textheight

\ifdim\pagegoal=\maxdimen
\else
  \goodguess=\pagegoal-\pagetotal
\fi
\the\goodguess

终止\par分配,因此 550.0pt 被排版

注意,如果测试结果为假,

\goodguess=\pagegoal-\pagetotal

将设置\goodguess=\pagegoal然后排版-然后开始分配\pagetotal

我想你的意思是

\goodguess=\dimexpr\pagegoal-\pagetotal\relax

相关内容