使用交替颜色的行在列之间添加空间的最佳方法

使用交替颜色的行在列之间添加空间的最佳方法

我搜索了一下这个话题,但没有成功。大多数时候,人们都想消除 空格或有问题最后一栏,等等。就我而言,我希望空格存在于那里并位于列之间。

我已经设法使用彩色规则但这看起来不太好(我指的是代码)并且感觉像是一种解决方法。

这里的主要问题是我的表格将被打印并手工填写,因此垂直分隔必须清晰,并且需要偶数/奇数颜色以避免混淆。

编辑:正如我的问题所述,表述Zarko得不够清楚,所以我重新措辞。

有没有最好的/更优雅的方式来增加带有交替颜色行的列之间的空间?

我曾使用rowcolors交替颜色(SpringGreen/gray)行,但其他解决方案可能也适用。行之间的空间对我来说并不重要,因为颜色确实定义了每行的开始/结束位置。

在此处输入图片描述

\documentclass[landscape]{memoir}
\usepackage[table,dvipsnames]{xcolor}
\usepackage{booktabs}
\usepackage{multirow}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}

\begin{document}
\arrayrulecolor{white}
\setlength{\arrayrulewidth}{3pt}
\begin{table}[ht]
\rowcolors{3}{SpringGreen}{gray!20!white}
{\large 
\centering
\label{my-label}
\begin{tabular}{>{\kern-\tabcolsep}C{2cm}|L{2cm}|L{2cm}|L{2cm}|L{2cm}|L{2cm}|L{2cm}<{\kern-\tabcolsep}}
\arrayrulecolor{black} 
\toprule
Part &  \multicolumn{5}{c}{\multirow{2}{*}{Calibration date}} \\
Number & \multicolumn{5}{c}{}   \\
\midrule
 &  &  &  &  &  &  \\ 
 &  &  &  &  &  &  \\
 &  &  &  &  &  &  \\
 &  &  &  &  &  &  \\
 &  &  &  &  &  &  \\
 &  &  &  &  &  &  \\
 &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\  
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\ 
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\
  &  &  &  &  &  &  \\  
  &  &  &  &  &  &  \\ 
\arrayrulecolor{black} 
\bottomrule
\end{tabular}
}
\end{table}
\end{document}

答案1

最简单的方法可能就是在列之间插入一些空格:

\documentclass[landscape]{memoir}
\usepackage[table,dvipsnames]{xcolor}
\usepackage{booktabs}
\usepackage{multirow}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}!{\hspace{3pt}}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}!{\hspace{3pt}}}

\begin{document}
\begin{table}[ht]
\rowcolors[]{3}{SpringGreen}{gray!20!white}

\begin{tabular}{C{2cm}L{2cm}L{2cm}L{2cm}L{2cm}L{2cm}L{2cm}}
\toprule
Part &  \multicolumn{5}{c}{\multirow{2}{*}{Calibration date}} \\
Number & \multicolumn{5}{c}{}   \\
\midrule
adk\hfill blbl &  &  &  &  &  &  \\
 &  &  &  &  &  &  \\
 &  &  &  &  &  &  \\ 
\bottomrule
\end{tabular}

\end{table}
\end{document}

在此处输入图片描述

答案2

我猜你想获得这样的东西:

在此处输入图片描述

在代码中添加了在列标题中makecell使用宏的包\thead{...}。单元格的颜色移至新列类型的定义C,所有规则均具有标准宽度和颜色。这样,我估计代码会更简洁、更简单:

\documentclass[landscape]{memoir}
\usepackage[table]{xcolor}
\usepackage{booktabs,makecell}
\renewcommand\theadfont{\bfseries\large}
\newcolumntype{C}{>{\color{white}\columncolor{gray!30}[.5\tabcolsep]%
                    \centering\arraybackslash}p{20mm}}
\newcommand\mc[2]{\multicolumn{#1}{c}{\thead{#2}}}

\begin{document}
\begin{table}[ht]
    \centering
    \begin{tabular}{@{$\;$} *{7}{C} @{\rule{0pt}{5ex}$\;$} }
    \toprule
\mc{1}{Part\\ Number} &  \mc{6}{Calibration date} \\
    \midrule
 &  &  &  &  &  &  \\   \addlinespace[8pt]% if you like bigger vertical space
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\
    \bottomrule
\end{tabular}
    \end{table}
\end{document}

附录: 相反,两行交替的颜色会查看是否在每第二行增加垂直空间。在这种情况下,表格如下所示:

在此处输入图片描述

代码:

\documentclass[landscape]{memoir}
\usepackage[table]{xcolor}
\usepackage{booktabs,makecell}
\renewcommand\theadfont{\bfseries\large}
\newcolumntype{C}{>{\color{white}\columncolor{gray!30}[.5\tabcolsep]%
                    \centering\arraybackslash}p{20mm}}
\newcommand\mc[2]{\multicolumn{#1}{c}{\thead{#2}}}

\begin{document}
\begin{table}[ht]
    \centering
    \begin{tabular}{@{$\;$} C @{\qquad} *{6}{C} @{\rule{0pt}{5ex}$\;$} }
    \toprule
\mc{1}{Part\\ Number} &  \mc{6}{Calibration date} \\
    \midrule
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\   \addlinespace[12pt]
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\   \addlinespace[12pt]
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\   \addlinespace[12pt]
 &  &  &  &  &  &  \\   \addlinespace
 &  &  &  &  &  &  \\
    \bottomrule
\end{tabular}
    \end{table}
\end{document}

相关内容