使用 siunitx 包
\usepackage{siunitx}
考虑以下两个表:
1.
\begin{tabular}{
S[table-number-alignment=center, table-figures-decimal=3, table-auto-round]
}
3.23958398 \\
\end{tabular}
% => 3.234
2.
\begin{tabular}{
S[table-figures-decimal=3, table-auto-round]
}
3.23958398 \\
\end{tabular}
% => 3.23958398
在前者中,数字会被四舍五入,但在后者中则不会。在和下都运行pdflatex
。xelatex
有人能解释一下吗?
答案1
在第二种情况下,您没有设置密钥table-number-alignment
,因此将采用默认值center-decimal-marker
。后者不是在表中为特定大小的数字保留空间,因此table-auto-round
不适用。
之所以将其center-decimal-marker
设为默认值,正是因为它不需要任何有关数字大小的信息就可以进行对齐而不会出现任何过满的框。