使用任意字符填充

使用任意字符填充

并不是说我非常需要这个,但我认为它可能会很有用:

\hfillwith像这样的命令的有效代码是什么?比如说,从命令发生的位置到行尾\hfillwith{bla}输出...?或者也许实际上有一个内置代码?blablablablabla

答案1

TeX 为这样的工作提供了领导者。有三种类型的领导者:

\leaders
\cleaders
\xleaders

不同之处在于它们如何处理“缺失空间”。例如,您可以指定一个框或规则以及粘合规范,\hfill或者一些\hskip

让我们用更简单的纯 TeX 举一个示例;它在 LaTeX 中的工作方式相同,但没有面向领导者的“官方”界面。

\parindent=0pt

\hsize=0.6\hsize

\hrule
\medskip

1. some text some text some text some longer text \leaders\hbox{abc}\hfill\null

2. some text some text some text some text \leaders\hbox{abc}\hfill\null

3. some text some text some text some text \cleaders\hbox{abc}\hfill\null

4. some text some text some text some text \xleaders\hbox{abc}\hfill\null

\bye

\.leaders(.代表无意义,cx) 后面跟着一个框时,这个框会被复制多次,直到适合要覆盖的空间为止。

在此处输入图片描述

规则显示了分配的文本宽度。您可以看到,在第 1 行和第 2 行中,框是水平对齐的:TeX 想象一个“无限字符串”,并在框可以完全容纳的地方将其剪切。在第 3 行中,缺失的空间被添加到两侧,而在第 4 行中,空间分布在复制的框之间。\null末尾的确保前导符不会在换行符处被丢弃。

在垂直模式下也可以使用引线,但我将跳过这种情况。

相关内容