使每个表格的第一行看起来相同

使每个表格的第一行看起来相同

最近我一直在为表格而苦恼。我终于设法克服了它。但是,我现在试图使我的表格的每个第一行看起来都一样(蓝色背景色上的粗体白色)。我真的不知道该怎么做。

我知道我必须使用\renewcommand。所以我的猜测是:

\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage{colortbl}
\usepackage{array}

\definecolor{Tab}{RGB}{79, 129, 189}
\renewcommand{
    tabular{
        <first lign of every tab>
    }{
        \rowcolor{blue} \textbf{\textcolor{white}}
    } \
\begin{document}

\begin{table}
\caption{Exemple of First Colored Lign}
\begin{tabular}{m{3cm}|m{10cm}}
    \rowcolor{Tab} \textbf{\textcolor{white}{HeaderLeft}} & \textbf{\textcolor{white}{HeaderRight}} \\
    \hline Acronym
        & Lorem ipsum dolor sit amet\\
    \hline Acronym
        & Lorem ipsum dolor sit amet \\
    \hline Acronym
        & Lorem ipsum dolor sit amet \\
    \hline 
    \end{tabular}
    \end{table}

    \begin{table}
    \caption{Exemple of Tab without a colored Lign}
    \begin{tabular}{m{3cm}|m{10cm}}
    \hline HeaderLeft & HeaderRight \\
    \hline Acronym
        & Lorem ipsum dolor sit amet\\
    \hline Acronym
        & Lorem ipsum dolor sit amet \\
    \hline Acronym
            & Lorem ipsum dolor sit amet \\
        \hline 
    \end{tabular}
    \end{table}

\end{document}

但是,它不起作用。:/ 第一行的标题是什么?我迷路了。

您知道如何将特定样式应用于 LaTeX 文档中每个表格的每个第一个标题行吗?

答案1

这是一种可能性,使用提供的方法this pageTeX 常见问题解答:

\documentclass[10pt]{report}
\usepackage[utf8]{inputenc}
\usepackage{colortbl}
\usepackage{array}

\definecolor{Tab}{RGB}{79, 129, 189}

\newcolumntype{$}{>{\global\let\currentrowstyle\relax}}
\newcolumntype{^}{>{\currentrowstyle}}
\newcommand{\rowstyle}[1]{\gdef\currentrowstyle{#1}%
  #1\ignorespaces
}
\newcommand\MyTabHeadings{%
  \rowcolor{Tab}\rowstyle{\bfseries\color{white}}}

\begin{document}

\begin{table}
\centering
\caption{Exemple of First Colored Line}
\begin{tabular}{$l^l^l}
\MyTabHeadings
HeaderLeft & HeaderCenter & HeaderRight \\
text & text & text \\
text & text & text \\
text & text & text \\
\end{tabular}
\end{table}

\end{document}

在此处输入图片描述

>{declaration}包提供的语法允许array直接 declaration在列的每个条目前面插入(也可以在列的每个条目后面<{declaration}插入declaration,但这与此无关)。

在 的格式规范中tabular,第一列前面必须是$,所有其他列前面必须是^(这些字符可以是任何其他通常不会出现在表的格式规范中的字符)。

\MyTabHeadings发布时,\rowstyle设置,样式将应用于此列并存储在,\currentrowstyle以便可以应用于^列。

对于正常行(\MyTabHeadings未发出的行),\currentrowstyle设置为\relax,因此^不执行任何操作并且行不会发生变化。

相关内容