在以下 MWE 中,XeTeX 将“1pt2pt3pt”与规则一起打印代替 \hrule
尺寸为 1pt 2pt 和 3pt。但\rule[1pt]{2pt}{3pt}
效果很好。那么该\hrule
命令有什么用呢?
\documentclass{article}
\begin{document}
\hrule{1pt}{2pt}{3pt}
\end{document}
答案1
\hrule
采用关键字而非括号参数:
\documentclass{article}
\begin{document}
\hrule height 1pt width 2pt depth 3pt
\end{document}
答案2
\hrule
(和\vrule
)是 TeX 基元,其语法不允许使用括号。\hrule
和 的语法\vrule
是(来自第 24 章TeXbook):
这意味着您应该使用(假设的参数按此顺序\hrule{1pt}{2pt}{3pt}
为depth
、width
和) :。height
\hrule depth 1pt width 2pt height 3pt
LaTeX 的\rule[1pt]{2pt}{3pt}
相当于(这需要 ε-TeX \dimexpr
;手动计算或使用维度寄存器在 Knuth 的 TeX 中使用):
\leavevmode\hbox{\vrule width 2pt height \dimexpr 3pt+1pt depth -1pt}