当siunitx
在表格中使用将单位与小数点对齐的数字(在本例中)时,我看到一个奇怪的行为,即对于小数,数字和单位之间的距离并不存在,但不知何故根据数字的数量不断增加......
\documentclass[DIN, a4paper]{scrartcl}
\usepackage[scaled]{helvet}
\renewcommand\familydefault{\sfdefault}
\usepackage{booktabs}
\usepackage[detect-all,locale=DE]{siunitx}
\newcommand{\cbm}{\unit{\cubic\metre}}
\begin{document}
\begin{tabular}{S}
\toprule
\textbf{Count} \\ \toprule
1,2 \cbm \\ \midrule
1,23 \cbm \\ \midrule
1,234 \cbm \\ \midrule
25,1 \cbm \\ \midrule
256,1 \cbm \\ \midrule
2567,1 \cbm \\ \midrule
2567,123 \cbm \\ \bottomrule
\end{tabular}
\end{document}
我怎样才能防止这种情况发生?
答案1
使用列选项时似乎可以工作:[table-format=5.7,table-align-text-post = false]
然后向单位定义添加固定空间:\newcommand{\cbm}{\,\unit{\cubic\metre}}
。
完整代码:
\documentclass[DIN, a4paper]{scrartcl}
\usepackage[scaled]{helvet}
\renewcommand\familydefault{\sfdefault}
\usepackage{booktabs}
\usepackage[detect-all,locale=DE]{siunitx}
\newcommand{\cbm}{\,\unit{\cubic\metre}}
\begin{document}
\begin{tabular}{S[table-format=5.7,table-align-text-post = false]}
\toprule
\textbf{Count} \\ \toprule
1,2 \cbm \\ \midrule
1,23 \cbm \\ \midrule
1,234 \cbm \\ \midrule
25,1 \cbm \\ \midrule
256,1 \cbm \\ \midrule
2567,1 \cbm \\ \midrule
2567,123 \cbm \\ \bottomrule
\end{tabular}
\end{document}