如何清除 NiceTabular 中特定单元格的单元格颜色?

如何清除 NiceTabular 中特定单元格的单元格颜色?

假设我有一张这样的表格:

\begin{NiceTabular}{p{3.8cm}p{3.8cm}}
\CodeBefore
    \rowcolors{2}{white}{gray!30}
\Body
    A & B \\
    C & D \\
\end{NiceTabular}

\rowcolors使行交替显示颜色。现在我想要包含C以下内容的单元格:不是有颜色。我试过:

    \cellcolor{} C & D \\

但这只是给了我

程序包 xcolor 错误:未定义颜色“”

那么,我该如何清除该特定单元格的颜色?该页面有背景图像,因此将单元格颜色设置为白色不是解决方案。

答案1

在这个例子中,第 4 行不受交替行颜色的影响。

他们的细胞将有一个透明的背景。

然后用来\cellcolor为该行的其他未着色单元格着色。

G

\documentclass{article}
\usepackage{nicematrix} 

\pagecolor{yellow} % bg color

\begin{document}        

\begin{NiceTabular}{p{3.8cm}p{3.8cm}p{3.8cm}}
    \CodeBefore
    \rowcolors{1-3,5}{white}{gray!30} % jump over row 4
    \cellcolor{gray!30}{4-1,4-3}% color the other cells of row 4 <<<<<<<<<<<<<<<<<<<<<<<<
    \Body
    A & B &1 \\
    C & D &2\\
    E & F &3\\
    G & H &4\\
    I & J &5\\
    K & L &6 \\
    M & N &7
\end{NiceTabular}
\end{document}

答案2

确保编译多次(两次或更多次)。

输出

\documentclass{article}
\usepackage{nicematrix}
\newcommand{\myred}{\color{red}}%change text color
\begin{document}

\begin{NiceTabular}{|*{4}{c|}}%
 [code-before = 
    \rowcolors{1}{red!60}{blue!10}%odd even row colours
    \rowcolor{green}{1} % header colour
    %row-col
    \cellcolor{white}{2-3, 3-4}%cells with white background
    \rectanglecolor{white}{4-1}{5-2} % a rectangle of white cells {top-left}{bottom-right}
    \rowcolor{white}{8}%the rows escaped
 ]\hline
    &   A   &   B   &   C        \\\hline
A   &   1   &   2   &   \myred 3 \\ 
B   &   4   &   5   & 6          \\ 
C   &   7   &   8   &   9        \\ 
D   &   0   &   1   &   2        \\
E   &   3   &   4   &   5        \\
F   &   6   &   7   &   8        \\
G   &   9   &   0   &   1        \\\hline
\end{NiceTabular}

\end{document}

答案3

6.26 版nicematrix(2023-11-22) 提供了一种特殊颜色nocolor。无论对这些单元格应用了何种其他着色说明(尤其是这些单元格是不是以白色显示)。

\documentclass{article}
\usepackage{nicematrix}
\pagecolor{gray!10}

\begin{document}

\begin{NiceTabular}{p{3.8cm}p{3.8cm}}[color-inside]
\CodeBefore
    \rowcolors{1}{red!15}{gray!30}
\Body
    A & B \\
    C & D \\
    E & F \\
    \cellcolor{nocolor} G & H \\
    I & J \\
    K & L 
\end{NiceTabular}

\end{document}

与往常一样nicematrix,您需要进行多次编译。

上述代码的输出

相关内容