两者都\the\prevgraf
显示为零。我期望它显示当前行计数器。
\documentclass[varwidth]{standalone}
\usepackage{expl3}
\begin{document}
\parbox{40mm}
{ \parshape 3 0mm 40mm 5mm 35mm 10mm 30mm
This is sentence 1. This is sentence 2.
\the\prevgraf
This is sentence 3. This is sentence 4.
\par
}
\the\prevgraf
\end{document}
答案1
当处于段落中间时,TeX 无法知道已经排版的行数,原因很简单,它还没有排版。
当一个段落开始时, 的值\prevgraf
被重置为 0;只有当一个段落或“迄今为止的段落”被分成几行时(后一种情况发生在一个段落被显示的方程式打断时),它才会更新。
显示的公式排版后,的值\prevgraf
将更新,在排版“迄今为止的段落”时指定的值上添加 3。
为什么你的最后一个命令也显示 0?因为该段落是按组 ( ) 排版的,因此组结束后\parbox
的值就会被遗忘。\prevgraf
\documentclass{article}
\begin{document}
\parbox{40mm}
{ \parshape 3 0mm 40mm 5mm 35mm 10mm 30mm
This is sentence 1. This is sentence 2.
\[a=b\]
\the\prevgraf
This is sentence 3. This is sentence 4.
\par
\the\prevgraf
}
\end{document}