LaTeX 中 siunitx 表格中数字和单位之间的距离变化

LaTeX 中 siunitx 表格中数字和单位之间的距离变化

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}

相关内容