
Estoy intentando obtener simultáneamente una columna que enumere automáticamente el número de fila pero que tenga un color similar al xcolor
comando \rowcolors
. Es decir, estoy intentando obtener un resultado similar a:
\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}
mientras usa una implementación similar a:
\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}
La primera implementación "objetivo" genera:
La implementación que utiliza numeración automática genera:
¿Cómo puedo obtener el color desde el primero sin necesidad de ingresar los números manualmente (o anteponer cada línea con un comando)?
Respuesta1
He aquí un posible enfoque:
>{command}
permite incluir comandos de formato, que se ejecutarán con cada celda. Además, debe definir adicionalmente el color de la celda con \cellcolor{...}
el interior\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}