长表中的多行居中标题和内容

长表中的多行居中标题和内容

我有一个longtable节省空间的设置,我必须使列标题多行并且其内容居中,同时应用自定义宽度。

在这三种方式中,我只成功应用了自定义宽度,因为在列标题中添加\\或插入另一个标题table无法实现多行,也c{Xcm}不允许将列的内容居中。

% centering column values
\begin{longtable}{c l l ... }
    % tried to use but does not work
    ... { c{1cm} l l ... }

% long title needs to multi-line, both do not work
\multicolumn{1}{|p{3cm}|}{\textbf{Long Title\\Long Title}} 

\multicolumn{1}{|p{3cm}|}{
    \begin{table}
        \textbf{Long Title}\\
        \textbf{Long Title}
    \end{table}
} 

左侧的表格演示了上述情况,但我想要的是右侧的表格 - 多行标题,居中且紧凑的行值。

去买掌声-yasss-greninja-goodra-xerneas

我有示例文档写LaTeX

答案1

您可以加载array包并定义一个新列:

\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}

并像 一样使用它。根据需要C{2cm}调整尺寸。2cm

\documentclass[a4paper]{article}

\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage[colorinlistoftodos]{todonotes}
\usepackage{longtable}

\usepackage{array}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}

\title{Your Paper}
\author{You}

\begin{document}
\begin{center}
\begin{longtable}{|C{2cm}|l|l|}
\caption[Feasible triples for a highly variable Grid]{Feasible triples for
highly variable Grid, MLMMH.} \label{grid_mlmmh} \\

\hline
\textbf{Long Time Title} &
\multicolumn{1}{c|}{\textbf{Triple chosen}} &
\multicolumn{1}{c|}{\textbf{Other feasible triples}} \\ \hline
\endfirsthead

\multicolumn{3}{c}%
{{\bfseries \tablename\ \thetable{} -- continued from previous page}} \\
\hline
\textbf{Long Time Title} &
\multicolumn{1}{c|}{\textbf{Triple chosen}} &
\multicolumn{1}{c|}{\textbf{Other feasible triples}} \\ \hline
\endhead

\hline \multicolumn{3}{|r|}{{Continued on next page}} \\ \hline
\endfoot

\hline \hline
\endlastfoot

Your data & again and again \\
\end{longtable}
\end{center}

\end{document}

在此处输入图片描述

如果需要垂直对齐,请使用

\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}

注意,m{#1}而不是p{#1}

这将使

在此处输入图片描述

此外,如果需要底部对齐,请使用b{#1}

在此处输入图片描述

相关内容