创建自定义表格环境

创建自定义表格环境

在从 PowerPoint 模板创建 beamer 模板的过程中,我尝试创建一个表格环境,其中包含彩色行、行间线条以及特定的页眉和页脚样式。目前,我已将布局混合在一个处理交替行颜色的环境中,但我无法在我的环境中定义页眉和页脚行或分隔线的样式。

\documentclass{article}

\usepackage[table]{xcolor}

\newenvironment{mytabular}[1]
  {\renewcommand{\arraystretch}{1.2}
  \rowcolors{1}{red!10}{green!30}
  \arrayrulecolor{white}
  \footnotesize
  \begin{tabular}{#1}}
  {\end{tabular}}

\begin{document}

\begin{mytabular}{l!{\textcolor{white}{\vrule width 1pt}}c!{\textcolor{white}{\vrule width 1pt}}r}
  \rowcolor{blue}
      & \textcolor{white}{\textbf{Standard}} & \textcolor{white}{\textbf{Varianz}} \\ \noalign{{\color{white}\hrule height 2pt}}
    x & x & x \\ \noalign{{\color{white}\hrule height 1pt}}
    x & x & x \\ \noalign{{\color{white}\hrule height 1pt}}
    x & x & x \\ \noalign{{\color{white}\hrule height 2pt}}
  \rowcolor{blue} x & x & x
\end{mytabular}

\end{document}

我希望以一种方式组合这些样式,以便我仍然可以定义列的数量和对齐方式,但固定分隔符。

答案1

到目前为止我能想到的最好的办法是:

\newcolumntype{|}{!{\color{white}\vrule width 1pt}}

\newcommand{\ihline}{
 \noalign{{\color{white}\hrule height 1pt}}
}

\newcommand{\iihline}{
  \noalign{{\color{white}\hrule height 2pt}}
}

\newenvironment{mytabular}[1]
{
  \renewcommand{\arraystretch}{1.2}
  \rowcolors{1}{blue}{green}
  \arrayrulecolor{white}
  \footnotesize
  \begin{tabular}{#1}
    \rowcolor{red}}
{\end{tabular}}

这使得用户可以像平常一样定义他们的表

\begin{mytabular}{l|c|r}
    & \textcolor{white}{\textbf{x}} & \textcolor{white}{\textbf{x}} \\ \iihline
  x & x & x \\ \ihline
  x & x & x \\ \ihline
  x & x & x \\ \ihline
  x & x & x
\end{mytabular}

如果能够像设置行颜色一样设置标题行的字体就好了,但这已经比我在问题中使用的版本好得多了。

相关内容