表格:不使用多列对齐单个单元格

表格:不使用多列对齐单个单元格

我想将表格的某些单元格(实际上是整个第一行)的内容居中,同时将表格的其余部分左对齐。

它与 一起工作multicolumn,但在使用时multicolumn它不会破坏单元格的内容并将所有文本放在一行。

我想知道是否存在一个简单的命令,例如 { \centering}(我尝试过但没有作用),而无需通过多列进行“绕行”?

\begin{table}[h] 
    \centering
    \label{example}
    \noindent\begin{tabular}{>{\raggedright\arraybackslash}m{3cm}|>{\raggedright\arraybackslash}m{3cm}|>{\raggedright\arraybackslash}m{3cm}|}\hline 
     here I want centering and line breaking  &here too  &here too \\ \hline
     the rest aligned on the left & left1 & left2\\ \hline
     3 & 4 & 5 \\ \hline
     \end{tabular}
     \end{table}

答案1

我不明白您为什么明显不愿意逐个\multicolumn单元格地覆盖默认列类型。

在此处输入图片描述

\documentclass{article}
\usepackage{array} % for "\newcolumntype" directive
%% Argument of 'M' and 'N' col. types: usable col. width, in cm
\newcolumntype{M}[1]{>{\raggedright\arraybackslash}m{#1cm}}
\newcolumntype{N}[1]{>{\centering\arraybackslash}m{#1cm}}
%% Two convenient shortcut macros
\newcommand{\mC}[2]{\multicolumn{1}{ N{#1}|}{#2}}
\newcommand{\mD}[2]{\multicolumn{1}{|N{#1}|}{#2}}

\begin{document}
\begin{table}[h] 
\centering
\caption{An example}
    \label{tab:example}
    \begin{tabular}{|M{3}|M{2.5}|M{3.5}|}
     \hline 
       \mD{3}{here I want centering and line breaking} 
     & \mC{2.5}{here too} 
     & \mC{3.5}{here too} \\
     \hline
     the rest aligned on the left, with line breaking 
     & left1 & left2\\ 
     \hline
     3.0 & 2.5 & 3.5 \\ 
     \hline
     \end{tabular}
\end{table}
\end{document}

答案2

或者,您可以使用包中的\Centering\RaggedLeft和命令。除其他外,这些命令经过修改,以便它们保留 的当前含义(如果您在环境中则不同),与基本 LaTeX 等效项、、不同。\RaggedRightragged2e\\tabular\centering\raggedleft\raggedright

\documentclass{article}
\usepackage{array}
\usepackage{ragged2e}

\begin{document}
\begin{table}[h] 
    \centering
    \label{example}
    \noindent
    \begin{tabular}{|>{\RaggedRight}m{3cm}|>{\RaggedRight}m{3cm}|>{\RaggedRight}m{3cm}|}
        \hline 
        \Centering here I want centering and line breaking  & \Centering here too  & \Centering here too \\ \hline
        the rest aligned on the left & left1 & left2\\ \hline
        3 & 4 & 5 \\ \hline
    \end{tabular}
\end{table}
\end{document}

相关内容