答案1
\hline
LaTeX 内核中的默认定义是:
\def\hline{%
\noalign{\ifnum0=`}\fi\hrule \@height \arrayrulewidth \futurelet
\reserved@a\@xhline}
所以你可以看到它的高度是\arrayrulewidth
。尺寸\arrayrulewidth
是在 LaTeX 内核中初始化的,但没有任何规范。这是由文档类完成的。对于大多数类,该值为0.4pt
:
\setlength\arrayrulewidth{.4\p@}%.4pt
答案2
在模块 463 中tex.web
(“TeX 程序”的来源)我们发现
下面是一个类似的过程,它返回指向规则节点的指针。此例程在 TeX 看到
\hrule
或后立即调用\vrule
;因此 *cur_cmd* 将是规则或者规则。其思想是将默认规则维度存储在节点中,然后如果发现 “height
”或“width
”或“ ”规范(以任何顺序),则覆盖它们。depth
定义 默认规则= 26214 { 0.4 分 }
因此规则的默认值为 0.4 pt。LaTeX 提供的\rule
接口没有默认值。但是,\arrayrulewidth
标准类中的默认值设置为 0.4pt,我想这是为了与 TeX 的规则兼容。参数控制和环境\arrayrulewidth
中规则的默认值,这些规则由说明符、 或生成。tabular
array
|
\vline
\hline
\cline