表格单元格中的数学字体大小与 dcolumn 不一致

表格单元格中的数学字体大小与 dcolumn 不一致

我的表格中的一些单元格包含必须围绕小数点对齐的数字。因此,我使用dcolumn来产生所需的对齐方式。但是,有些单元格必须用较小的字体同时保持小数点分隔符周围的对齐方式。不幸的是,后面这些单元格显示行为不一致字体大小:字体大小在小数点分隔符之前保持较小,而在后续数字中恢复正常字体大小。我在此使用该类制作一个 MWE,standalone仅用于表示目的。

我已经尝试了一些替代方案,例如使用包relsize及其相关命令\mathsmaller。我多次尝试都无济于事。此外,我找不到其他地方记录此类问题。

有人能帮忙解决字体大小不一致的问题吗?

% Minimal Working Example
\documentclass[varwidth=\maxdimen]{standalone}
\usepackage{multicol}
\usepackage{array}
\usepackage{dcolumn}
\newcolumntype{.}{D{.}{.}{2.3}}

\begin{document}
    
\begin{table}
\begin{tabular}{c.}
    Header A    & \multicolumn{1}{c}{Header B} \\
    Item 1  & -0.522 \\
    \scriptsize(Item 2)  & \scriptstyle 0.001
\end{tabular}
\end{table}

\end{document}

MWE 的视觉输出

答案1

添加额外的内容\scriptstyle可以解决问题:

\documentclass[varwidth=\maxdimen]{standalone}
\usepackage{multicol}
\usepackage{array}
\usepackage{dcolumn}
\newcolumntype{.}{D{.}{.}{2.3}}

\begin{document}
    
\begin{table}
\begin{tabular}{c.}
    Header A    & \multicolumn{1}{c}{Header B} \\
    Item 1  & -0.522 \\
    \scriptsize(Item 2)  & \scriptstyle 0.\scriptstyle001
\end{tabular}
\end{table}

\end{document}

在此处输入图片描述

答案2

如果你不受限制dcolumn,你可以尝试一下siunitx

\documentclass{article}
\usepackage{siunitx}

\begin{document}

\begin{tabular}{c S[table-format=-1.3]}
    Header A    & {Header B} \\
    Item 1  & -0.522 \\
    \scriptsize(Item 2)  & \scriptsize 0.001
\end{tabular}

\end{document}

在此处输入图片描述

相关内容