增加行高并居中,但仅限第一行

增加行高并居中,但仅限第一行

我有一张使用该包构建的表tabu

我的代码目前如下所示。\\[5ex] 增加行高,但第三个单元格的内容对齐顶部而不是中间(注意定义X[c,m])。\arraystretch更改所有行的高度,但我只想增加第一行的高度。

\documentclass[]{article}

\usepackage{tabu}

\begin{document}

\begin{table}[h!]
    \begin{center}
        \begin{tabu} to 0.5\linewidth {| X[c,m] | X[c,m] | X[c,m] |}
            \hline
            \textbf{First column} & \textbf{Second Column} & \textbf{Third Column} \\[5ex] \hline
            \hline

            1 & 0x1 & 01 \\ \hline
            2 & 0x2 & 02 \\ \hline
            3 & 0x3 & 03 \\ \hline
            4 & 0x4 & 04 \\ \hline
            5 & 0x5 & 05 \\ \hline
            6 & 0x6 & 06 \\ \hline
            7 & 0x7 & 07 \\ \hline
            8 & 0x8 & 010 \\ \hline
            9 & 0x9 & 011 \\ \hline
            10 & 0xa & 012 \\ \hline

        \end{tabu}
    \end{center}

    \caption{Example of another short table, but smaller and centered.}
\end{table}

\end{document}

答案1

我承认它并不漂亮,但是我\tr在每个第一行列之前放置了顶部规则,\br在每个第一行列之后放置了底部规则。

尝试用单一规则来实现这一点会导致出现单词间垂直空间。尝试在一列而不是三列中实现这一点会导致列定位不一致。

\documentclass[]{article}

\usepackage{tabu}
\newcommand\tr{\rule{0pt}{4.5ex}}
\newcommand\br{\rule[-3ex]{0pt}{3ex}}
\begin{document}

\begin{table}[h!]
    \begin{center}
        \begin{tabu} to 0.5\linewidth {| X[c,m] | X[c,m] | X[c,m] |}
            \hline
            \tr\textbf{First column}\br & \tr\textbf{Second Column}\br &
            \tr\textbf{Third Column}\br \\ \hline
            \hline

            1 & 0x1 & 01 \\ \hline
            2 & 0x2 & 02 \\ \hline
            3 & 0x3 & 03 \\ \hline
            4 & 0x4 & 04 \\ \hline
            5 & 0x5 & 05 \\ \hline
            6 & 0x6 & 06 \\ \hline
            7 & 0x7 & 07 \\ \hline
            8 & 0x8 & 010 \\ \hline
            9 & 0x9 & 011 \\ \hline
            10 & 0xa & 012 \\ \hline

        \end{tabu}
    \end{center}

    \caption{Example of another short table, but smaller and centered.}
\end{table}

\end{document}

在此处输入图片描述

答案2

{NiceTabular}中,您可以使用第一行中的命令的nicematrix键。cell-space-limits\RowStyle

此外,该键hvlines绘制了所有规则(水平和垂直),并且您仍然可以将\Hine\Hline双水平规则放置在所需的位置。

\documentclass{article}
\usepackage{nicematrix}

\begin{document}

\begin{table}[h!]
\begin{center}
\begin{NiceTabular}[width = 0.5\linewidth]{ X[c,m] X[c,m] X[c,m]}[hvlines]
    \RowStyle[cell-space-limits=3ex,bold]{}
    First column & Second Column & Third Column \\ \Hline\Hline
    1 & 0x1 & 01 \\ 
    2 & 0x2 & 02 \\ 
    3 & 0x3 & 03 \\ 
    4 & 0x4 & 04 \\ 
    5 & 0x5 & 05 \\ 
    6 & 0x6 & 06 \\ 
    7 & 0x7 & 07 \\ 
    8 & 0x8 & 010 \\ 
    9 & 0x9 & 011 \\ 
    10 & 0xa & 012 \\ 
\end{NiceTabular}
\end{center}
\caption{Example of another short table, but smaller and centered.}
\end{table}

\end{document}

上述代码的输出

相关内容