
この文書では、\thepage
間違った番号が示されています(各ページの最初の段落)
\documentclass{article}
\textheight5\baselineskip
\begin{document}
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-
test -\thepage-\\
test -\thepage-\\
test -\thepage-\\
test -\thepage-\\
test -\thepage-\\
test -\thepage-
test -\thepage-
\end{document}
答え1
あなたの例では 6 行の段落がありますが、ページには最大 5 行しか入る余地がありません。
段落が完全にタイプセットされ、行 (水平ボックスとして) が「最近の投稿リスト」に送信され、「ページ ビルダーが実行されます」。つまり、最近の投稿の資料がメインの垂直リストに移動され、TeX は内部計算を実行して、ページ区切りを発行する必要があるかどうか、またどこで発行する必要があるかを判断します。
この場合、明らかに改ページする必要があるので、タイプセットした段落の一部がページ上に残ります。ん、他の部分はページに表示されますん+1。ただし、すべての\thepage
コマンドはすでに値に完全に展開されていますん段落はすでにタイプセットされているため、これ以上変更することはできません。
代わりに を使用すると\pageref
、ページ番号は から収集された値から割り当てられます。前のLaTeX が実行されるので、その間に改ページが変更されていない限り、正しいものになります。LaTeX をもう一度実行すると、状況は修正されます。
あなたは価値を信頼することができます\thepage
のみコマンドの直後に使用しないでください\newpage
。このようなコマンドは、構築中の段落を終了し、TeX にページ ビルダーを実行させるためです。
まあ、そのようなポイントでも\thepage
信頼できない境界線の状況(たとえば、大きなフロート)を考えることもできます。