表格环境中的数学材料和水平线之间缺少垂直空白

表格环境中的数学材料和水平线之间缺少垂直空白

考虑一下表格

在此处输入图片描述

由以下代码生成:

\usepackage{amsmath}
\begin{document}
\begin{table}[]
    {\renewcommand{\arraystretch}{2}
    \begin{tabular}{ccc} \hline
        & text        & text        \\ \hline
        text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \hline
    \end{tabular}
    }
\end{table}
\end{document}

如您所见,\dfrac{1}{x}表格中的间距太紧。如何设置垂直间距,并确保所有文本和公式都垂直居中对齐?

答案1

我可以想到两种不同的解决方案:

  • 不要使用\hline\cline和,而是切换到规则绘制指令书签包裹。

  • 在需要的地方插入排版支柱。例如,\mathstrut根据需要在上标和下标位置使用指令。

在此处输入图片描述

\documentclass{article} % or some other suitable document class
\usepackage{amsmath}  % for '\dfrac' macro
\usepackage{booktabs} % for '\toprule', `\midrule`, `\bottomrule`, and `\cmidrule` directives
\begin{document}
\begin{table}[ht]
    \begin{tabular}[t]{ccc} 
        \hline
        & text & text \\ \hline
        text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \hline
    \end{tabular}
    \qquad
    \begin{tabular}[t]{ccc} \toprule
        & text & text \\ \midrule
        text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \bottomrule
    \end{tabular}
    \qquad
    \begin{tabular}[t]{ccc} \hline
        & text & text \\ \hline
        text & $\dfrac{1^{\mathstrut}}{x}$ & $\dfrac{1}{x_{\mathstrut}}$ \\ \hline
    \end{tabular}
\end{table}
\end{document}

答案2

该包提供了处理此类问题的nicematrix关键(当然,您必须使用而不是)。cell-space-limits{NiceTabular}{tabular}

\documentclass{article}
\usepackage{nicematrix}

\NiceMatrixOptions{cell-space-limits=2pt}

\begin{document}

\begin{table}[]
    \renewcommand{\arraystretch}{2}
    \begin{NiceTabular}{ccc} \hline
        & text        & text        \\ \hline
        text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \hline
    \end{NiceTabular}
\end{table}

\end{document}

上述代码的输出

当然,如果没有\renewcommand{\arraystretch}{2}和工具,输出可能会更好booktabs

\documentclass{article}
\usepackage{nicematrix,booktabs}

\NiceMatrixOptions{cell-space-limits=2pt}

\begin{document}

\begin{table}[]
    \begin{NiceTabular}{ccc} \toprule
        & text        & text        \\ \midrule
        text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \bottomrule
    \end{NiceTabular}
\end{table}

\end{document}

第二段代码的输出

相关内容