表格列框标题:水平和垂直居中

表格列框标题:水平和垂直居中

我正在尝试使用“tabu”(具体来说,longtabu)来创建表格。我试图遵循政府印刷局样式手册指南 13.21:“Boxheads [即表格列标题] 水平和垂直居中。”以下是手册本身的一个示例:

垂直和水平居中的框标题示例

这是我正在处理的表格的精简示例。我还没能弄清楚如何将标题垂直或水平居中:

\documentclass{article}
\usepackage{ctable}
\usepackage{longtable}
\usepackage{tabu}

\begin{document}
\begin{longtabu} to \textwidth{ X[24] X[106] X[16] X[46] }

\toprule
\rowfont[c]\normalsize Symbol & Common Name \strut\newline\strut    Scientific Name & ODA List/Target & Mapping Protocol \\
\midrule\endhead

\scshape{aecy}  &   jointed goatgrass   \strut\newline\strut\quad   \emph{Aegilops cylindrica}  &   B   &   Mandatory   \\
\scshape{aetr}  &   barbed goatgrass    \strut\newline\strut\quad   \emph{Aegilops triuncialis \emph{var.} triuncialis} &   A/T &   Mandatory   \\
\scshape{brte}  &   cheatgrass  \strut\newline\strut\quad   \emph{Bromus tectorum}  &   &   Discretionary   \\

\bottomrule
\end{longtabu}
\end{document}

我得到如下结果:

我的结果

标题既不是垂直居中也不是水平居中。我尝试使用 \rowfont[c],但这似乎无效。我不知道如何垂直居中。其他类似的问题我不清楚。有人能帮忙吗?谢谢!

答案1

在此处输入图片描述

借助makecell包,改变列的宽度比例、单元格的大小\tabcolsep和垂直方向的尺寸:

\documentclass{article}
\usepackage{booktabs, makecell, longtable, tabu}

\begin{document}
{
\tabulinesep=1.5pt
\begin{longtabu} to \textwidth{ X[12,c,m] X[50,c,m] X[15,c,m] X[18,c,m] }
\toprule
%\rowfont[c]\normalsize
Symbol          &   \makecell{Common Name\\
                    Scientific Name}            &   \makecell{ODA\\
                                                    List/Target}
                                                        & Mapping Protocol \\
\midrule\endhead
\scshape{aecy}  &   \makecell{jointed goatgrass\\
                    \emph{Aegilops cylindrica}} &   B   &   Mandatory       \\
\scshape{aetr}  &   \makecell{barbed goatgrass\\
                    \emph{Aegilops triuncialis
                    \emph{var.} triuncialis}}   &   A/T &   Mandatory       \\
\scshape{brte}  &   \makecell{cheatgrass\\
                    \emph{Bromus tectorum}}     &       &   Discretionary   \\

\bottomrule
\end{longtabu}
}
\end{document}

相关内容