colortbl 踩踏 booktabs 中的中间规则

colortbl 踩踏 booktabs 中的中间规则

我正在使用 booktabs 和 colortbl。我遇到了一个非常烦人的问题,即颜色表与水平规则重叠。可能是像素对齐问题或其他问题,但我无法解决它。我知道同一张表中的规则和颜色在印刷上存在问题,但请暂时假装不是这样。

这是我的 MWE:

\documentclass{article}

\usepackage[table]{xcolor}
\usepackage{tabulary}
\usepackage{booktabs}

\begin{document}
\begin{center}

\newcolumntype{G}{>{\columncolor{gray!15}[0.9\tabcolsep]}C}
\newcommand{\mythickrule}{\specialrule{1em}{0em}{0em}}
\newcommand{\whiterow}{\rowcolor{white}[0.9\tabcolsep]}

\begin{table}
  \begin{tabulary}{\linewidth}{LG} \mythickrule
        \whiterow foo            & stuff \\ \mythickrule
        bar                      & stuff \\ \mythickrule
    \end{tabulary}
\end{table}
\end{center}
\end{document}

这是我所看到的。注意那些小凸起和切口。我该如何清理它,让颜色和规则齐平?

彩色表格问题

我找到了相关链接,但这并没有给我带来答案:

使用 colortbl 和 booktabs 对表格中的列进行着色

答案1

在此处输入图片描述

这些小块主要是由于0.9\tabcolsep没有覆盖所有部分,我做的另一个改变是将白色规则放在白色单元格后面而不是保留它们,因为这样黑色规则的任何重叠对于白色和灰色单元格来说都是相同的。

\documentclass{article}

\usepackage[table]{xcolor}
\usepackage{tabulary}
\usepackage{booktabs}

\begin{document}
\begin{center}

\newcolumntype{G}{>{\columncolor{gray!15}[\tabcolsep]}C}
\newcommand{\mythickrule}{\specialrule{1em}{0em}{0em}}
\newcommand{\whiterow}{\rowcolor{white}[\tabcolsep]}

\begin{table}
  \begin{tabulary}{\linewidth}{>{\columncolor{white}[\tabcolsep]}LG} 
\mythickrule
        \whiterow foo            & stuff \\ \mythickrule
    bar                      & stuff \\ \mythickrule
    \end{tabulary}
\end{table}
\end{center}
\end{document}

相关内容