表の番号と色の自動設定

表の番号と色の自動設定

同時に、行番号を自動的にリストするが、xcolor\rowcolorsコマンドと同様に色付けされた列を取得しようとしています。つまり、次のような出力を取得しようとしています。

\usepackage[table]{xcolor}

\begin{document}

\rowcolors{2}{green!60!yellow!40}{green!40!yellow!20}

\begin{tabular}{|p{2em}|p{1in}|p{1in}|}
\hline
\cellcolor{violet!20} ID & \cellcolor{violet!20} Description  & \cellcolor{violet!20} Location\\
1 & Lorem & ipsum\\
2 & Dolor & dolor\\
3 & Foo & bar\\
\hline
\end{tabular}

\end{document}

次のような実装を使用する場合:

\usepackage[table]{xcolor}

\begin{document}

\newcounter{rownum}
\setcounter{rownum}{1}

\newcommand{\rownumber}{\arabic{rownum} \stepcounter{rownum}}

\rowcolors{2}{green!60!yellow!40}{green!40!yellow!20}

\begin{tabular}{|@{\makebox[2em][r]{\rownumber~}}|p{1in}|p{1in}|}
\hline
\multicolumn{1}{|@{\makebox[2em][r]{ID~}} | l |}{\cellcolor{violet!20}Description} & \cellcolor{violet!20} Location\\
Lorem & ipsum\\
Dolor & dolor\\
Foo & bar\\
\hline
\end{tabular}

\end{document}

最初の「ターゲット」実装は以下を生成します。色付けは正しいが、自動番号付けは行われない表

自動番号付けを使用する実装では、以下が生成されます。ここに画像の説明を入力してください

手動で数字を入力したり、各行の先頭にコマンドを追加したりせずに、最初から色付けするにはどうすればよいですか?

答え1

考えられるアプローチは次のとおりです。

ここに画像の説明を入力してください

>{command}各セルで実行される書式設定コマンドを含めることができます。さらに、\cellcolor{...}内部でセルの色を追加定義する必要があります。\multicolumn

\documentclass{standalone}
\usepackage{array}
\usepackage[table]{xcolor}
\newcounter{rownum}
\setcounter{rownum}{0}
\rowcolors{2}{green!60!yellow!40}{green!40!yellow!20}
\begin{document}
    \begin{tabular}{|>{\stepcounter{rownum}\therownum}p{1em}|p{0.75in}|p{0.75in}|}
        \hline
        \multicolumn{1}{|p{1em}|}{\cellcolor{violet!20}{ID}} & \cellcolor{violet!20}Description & \cellcolor{violet!20} Location\\
        &Lorem & ipsum\\
        &Dolor & dolor\\
        &Foo & bar\\
        \hline
    \end{tabular}
\end{document}

関連情報