删除表中 \cmidrule 造成的行内空格

删除表中 \cmidrule 造成的行内空格

我想

  • 删除下表中“带空格的条目”周围的多余空格
  • 或者整体扩大条目之间的间距。

我的目标是尽管使用了 ,但整个表格的间距看起来仍然美观整洁\cmidrule。有人知道如何实现吗?提前致谢!

具有额外垂直空间的桌子

梅威瑟:

\documentclass[5p]{elsarticle}

%for figures and tables, captions
\usepackage{booktabs}
\usepackage{caption}

\begin{document}

\begin{table}[th]
    \caption[table title]{table title}
    \centering\scriptsize
    \begin{tabular*}
        {\columnwidth}{
        @{\extracolsep{\fill}\hspace{\tabcolsep}}
        cc
        @{\hspace{\tabcolsep}}
        }
        \toprule
        %
        {Column 1} & 
        {Column 2.1} \\
        \cmidrule{1-1} \cmidrule{2-2}
        %
        entry & entry\\
        entry & entry\\
        entry & entry\\
        entry & \\
        \cmidrule{2-2}
        entry with space & {Column 2.2}\\
        \cmidrule{2-2}
        entry & entry\\
        entry & entry\\
        entry & entry\\
        %
        \bottomrule
    \end{tabular*}
\end{table}

\end{document}

答案1

正如 Sigur 的评论所说,\cline在下面的行中突出。这是出于历史原因(特别是\hline不突出的注释),并且这在某些构造中很复杂)。

\documentclass{article}

%for figures and tables, captions
\usepackage{booktabs}
\usepackage{caption}

\begin{document}

\begin{table}[th]
    \caption[table title]{table title}
    \centering\scriptsize
    \begin{tabular*}
        {\columnwidth}{
        @{\extracolsep{\fill}\hspace{\tabcolsep}}
        cc
        @{\hspace{\tabcolsep}}
        }
        \toprule
        %
        {Column 1} & 
        {Column 2.1} \\
        \cmidrule{1-1} \cmidrule{2-2}
        %
        entry & entry\\
        entry & entry\\
        entry & entry\\
        entry & \\
        \cline{2-2}
        entry with space & {Column 2.2}\\
        \cline{2-2}
        entry & entry\\
        entry & entry\\
        entry & entry\\
        %
        \bottomrule
    \end{tabular*}
\end{table}

\end{document}

上述代码的输出

您还可以使用 来解决您的问题。{NiceTabular}nicematrix注意,在 中{NiceTabular}\cline不是设计上突出(但有一个键standard-cline可以回到标准行为)。

事实上,我之所以这么说,{NiceTabular}是因为在那个环境中,您在数组的行、单元格和列下创建了 PGF/Tikz 节点,并且您可以在构造数组后使用这些节点和 Tikz 来绘制您想要的任何规则(因此无需修改数组的几何形状......)

tabularx但是,由于技术原因,您必须切换到适合您情况的语法。

\documentclass{article}

%for figures and tables, captions
\usepackage{booktabs}
\usepackage{caption}
\usepackage{nicematrix,tikz}

\begin{document}

\begin{table}[th]
    \caption[table title]{table title}
    \centering\scriptsize
    \begin{NiceTabularX}
        {\columnwidth}{cXc}
        \toprule
        %
        {Column 1} && 
        {Column 2.1} \\
        \cmidrule{1-1} \cmidrule{3-3}
        %
        entry && entry\\
        entry && entry\\
        entry && entry\\
        entry && \\
        entry with space && {Column 2.2}\\
        entry && entry\\
        entry && entry\\
        entry && entry\\
        %
        \bottomrule
    \CodeAfter
        \begin{tikzpicture}
           \draw ([yshift=0.6ex]6-|3) -- ([yshift=0.6ex]6-|4) ; 
           \draw (7-|3) -- (7-|4) ;
        \end{tikzpicture}
    \end{NiceTabularX}
\end{table}

\end{document}

主要的兴趣在于您可以调整规则的位置(yshift=0.6ex在我的示例中)。

上述代码的输出

您需要多次编译(因为 PGF/Tikz 节点)。

相关内容