为什么以下命令在行结束之前不会产生填充空格的水平规则?
Hello \rule[0.5em]{\fill}{1pt}
Run Code Online (Sandbox Code Playgroud)
我的理解是,这应该打印文本" Hello"后跟一个水平规则,该规则一直延伸到行尾,类似于\hfill实际等效的宏\hspace\fill.- 但实际上,这个命令只生成文本" Hello",没有规则.
我知道效果可以产生,\hrulefill但它不能在这里使用,因为我想要一个凸起的规则,\hrulefill不能\raisebox与我一起工作,我希望我的规则挂在基线之上(最好在线的中间).
RTB*_*ard 12
我没有一个令人满意的答案,为什么你提出的命令不起作用,但我可以提供一个有效的解决方法.放
% Raised Rule Command:
% Arg 1 (Optional) - How high to raise the rule
% Arg 2 - Thickness of the rule
\newcommand{\raisedrule}[2][0em]{\leaders\hbox{\rule[#1]{1pt}{#2}}\hfill}
Run Code Online (Sandbox Code Playgroud)
进入你的文档的前言,然后你就可以完成你希望的目标:
Hello \raisedrule[0.5em]{1pt}
Run Code Online (Sandbox Code Playgroud)
横向规则为1pt高度并上升1.5pt.
Hello \leaders\vrule height 2.5pt depth -1.5pt \hfill \null
Run Code Online (Sandbox Code Playgroud)