获取线其余部分的长度

获取线其余部分的长度

可能重复:
有没有办法测量一行文本的剩余空间?

我有一些文本,想在行尾添加一个 \hrulefill,后面跟着一个句点。但是,如果行的文本太接近行尾,规则将被省略,结果只有一个句点 -- 或者 -- 会创建一个新行,规则将被省略,并且行以句点开头。

如何确定行尾是否有足够的空间来容纳指定长度的足够大小的 hrulefill?

答案1

以下怎么样(使用\qedamsart.cls 中的命令的想法):

\newcommand{\myrulefill}{\unskip\penalty9999 \hbox{}\nobreak\hrulefill
  \hbox to 1em{\hrulefill}.}

这保证了 hrulefill 至少有 1em(当然,你可以将 1em 改为其他长度),并防止 hrulefill 单独占一行。你只需将命令放在\myrulefill段落末尾即可。

相关内容