从页面上边缘到当前位置的垂直线

从页面上边缘到当前位置的垂直线

我正在努力解决这个非常简单的(vanilla plainTeX)技巧,但我无法破解它......

如何绘制一条垂直线(即垂直于地平线)从当前页面的顶部(或顶部边距或尽可能顶部)通向当前位置(特别是调用解决此问题的宏时的文本位置)?

PS 可能不太清楚,但是当前位置的意思包括水平位置和垂直位置。即。

Here I \myruler am...

Another paragraph...

会产生类似的东西

       |
       |
       |
       |
       |
Here I | am...

Another paragraph...

答案1

一种可能性是使用保存\pagetotal当前页面累积自然高度的尺寸:

\newdimen\ruleht
\def\myrule{\par
  \ruleht=\pagetotal
  \vskip-\the\ruleht\llap{\vrule height\the\ruleht}
}

\def\Text{%some filler text for the example
text text text text text text text text text text text text text text text text 
text text text text text text text text text text text text text text text text 
text text text text text text text text text text text text text text text text 
text text text text text text text text text text text text text text text text 
text text text text text text text text text\par}

\Text\Text\myrule

\bye

在此处输入图片描述

答案2

根据 Gonzalo 的回答,也许类似

\hsize=24pc
\def\lipsum{Lorem ipsum dolor sit amet. }
\def\llipsum{\lipsum\lipsum}
\def\lipsumV{\llipsum\llipsum\lipsum}
\def\pgtotrule{\dimen0=\pagetotal
  \advance\dimen0 by\ht\strutbox
  \advance\dimen0 by\baselineskip
  \smash{\vrule height\dimen0 depth\dp\strutbox}}

\lipsumV
\lipsumV

\llipsum \lipsum \pgtotrule \lipsumV

\bye

在此处输入图片描述

相关内容