makegapedcells 禁用 rowcolor

makegapedcells 禁用 rowcolor

我有下表

\documentclass[a4paper, 11pt, parskip]{scrreprt}
\usepackage{graphicx}
\usepackage{colortbl}
\usepackage{xcolor}
\usepackage{multirow}
\usepackage{makecell}%To keep spacing of text in tables
\setcellgapes{3pt}%parameter for the spacing

\newcommand{\specialcell}[2][c]{%
    \begin{tabular}[#1]{@{}c@{}}#2\end{tabular}}

\begin{document}
\begin{table}[h]
    %\makegapedcells
    \centering
    \resizebox{\textwidth}{!}{%resizing the whole table
        \begin{tabular}{|c|c|c|c|c|c|c|c|c|}
            \hline 
            \multicolumn{9}{|c|}{\Huge Relaisplatine} \\ 
            \hline 
            Relay Nr. & Part & Test-Id & \specialcell[c]{Signal-Name \\for Testcases} & Conn. & Pin & \specialcell[c]{Pin-\\Func.} & R Value & \specialcell[c]{Influenced \\ Signal/Voltage } \\ 
            \hline
            \rowcolor[gray]{0.8} 
            &  &  &  &  & 1 & N.C. & Open & Open \\
            \cline{6-9}
            %\hline 
            0 & WFB & WFB\_VOLT\_SDAR & WFB\_CLOCK\_+1V8 & P2 & 3 & COM &  0 $\Omega$ & SIGN02659 \\
            \cline{6-9}  
            %\hline 
            &  &  &  &  & 5 & N.O. &  0 $\Omega$ & GND \\
            %\cline{6-9}  
            \hline 
            &  &  &  &  & 7 & N.C. &  Open & Open \\ 
            \cline{6-9} 
            1 & WFB & WFB\_CLK & WFB\_CLKDIS153\_MUXOUT  & P2 & 9 & COM &  0 $\Omega$ & P5801 \\ 
            \cline{6-9}
            &  &  &  &  & 11 & N.O. &  0 $\Omega$ & P5802 \\ 
            \hline 
            &  &  &  &  & 13 & N.C. &  Open & Open \\ 
            \cline{6-9} 
            2 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_VCORE & P2 & 15 & COM &  0 $\Omega$ & SIGN02652 \\ 
            \cline{6-9} 
            &  &  &  &  & 17 & N.O. &  0 $\Omega$ & GND \\ 
            \hline 
            &  &  &  &  &  & N.C. &  Open & Open \\ 
            \cline{6-9} 
            3 & RIO & RIO\_T2\_DATA & RIO\_T2\_DATA & P3 & PCB-Cable & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SDA \\ 
            \cline{6-9} 
            &  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\ 
            \hline 
            &  &  &  &  &  & N.C. &  Open & Open \\ 
            \cline{6-9} 
            4 &  &  &  & P3 &  & COM &  0 $\Omega$ &  \\ 
            \cline{6-9} 
            &  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\ 
            \hline 
            &  &  &  &  & 14 & N.C. &  Open & Open \\ 
            \cline{6-9} 
            5 & RIO & RIO\_T1\_CLK & RIO\_T1\_CLK & P2 & 16 & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SCL1 \\ 
            \cline{6-9} 
            &  &  &  &  & 18 & N.O. &  0 $\Omega$ &  \\ 
            \hline 
            &  &  &  &  & 8 & N.C. &  Open & Open \\ 
            \cline{6-9} 
            6 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_MGTVCCAUX & P2 & 10 & COM &  0 $\Omega$ & SIGN02672 \\ 
            \cline{6-9} 
            &  &  &  &  & 12 & N.O. &  0 $\Omega$ &  \\ 
            \hline 
            &  &  &  &  & 2 & N.C. &  Open & Open \\ 
            \cline{6-9} 
            7 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_AVTT & P2 & 4 & COM &  0 $\Omega$ & SIGN02661 \\ 
            \cline{6-9} 
            &  &  &  &  & 6 & N.O. &  0 $\Omega$ & Open \\ 
            \hline 
        \end{tabular}
    }
    \caption{Verkabelung der ersten Relaisplatine an X400/PortA}
\end{table}
\end{document}

在此处输入图片描述

如您所见,表格的标题 Relaisplatine 触及了表格边框。为了解决这个问题,我使用了\makegapedcells,但如果我使用它,它会禁用行的颜色。

我怎样才能使标题不触及边框并且有彩色的行?

答案1

\makegapedcells包中的宏makecell与表格颜色不兼容。在类似情况下,您可以使用包cellspace并扩展S到列类型,您希望在单元格中添加垂直空格:

\documentclass[a4paper, 11pt, parskip]{scrreprt}
\usepackage[table]{xcolor}
\usepackage{cellspace, makecell, multirow}% for tables
\setlength\cellspacetoplimit{4pt}
\setlength\cellspacebottomlimit{4pt}

%-------------------------------------- only for show page layout
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}
\begin{table}%[ht]
    \tiny
    \setlength\tabcolsep{3pt}
    \centering
        \begin{tabular}{|c|c|c|c|c|c|Sc|c|c|}
            \hline
            \multicolumn{9}{|>{\normalsize}Sc|}{Relaisplatine} \\
            \hline
\makecell{Relay\\ Nr.} & Part & Test-Id & \makecell[c]{Signal-Name \\for Testcases} & Conn. & Pin & \makecell[c]{Pin-\\Func.} & R  & \makecell[c]{Influenced \\ Signal/Voltage } \\
            \hline
            \rowcolor[gray]{0.8}
            &  &  &  &  & 1 & N.C. & Open & Open \\
            \cline{6-9}
            %\hline
            0 & WFB & WFB\_VOLT\_SDAR & WFB\_CLOCK\_+1V8 & P2 & 3 & COM &  0 $\Omega$ & SIGN02659 \\
            \cline{6-9}
            %\hline
            &  &  &  &  & 5 & N.O. &  0 $\Omega$ & GND \\
            %\cline{6-9}
            \hline
            &  &  &  &  & 7 & N.C. &  Open & Open \\
            \cline{6-9}
            1 & WFB & WFB\_CLK & WFB\_CLKDIS153\_MUXOUT  & P2 & 9 & COM &  0 $\Omega$ & P5801 \\
            \cline{6-9}
            &  &  &  &  & 11 & N.O. &  0 $\Omega$ & P5802 \\
            \hline
            &  &  &  &  & 13 & N.C. &  Open & Open \\
            \cline{6-9}
            2 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_VCORE & P2 & 15 & COM &  0 $\Omega$ & SIGN02652 \\
            \cline{6-9}
            &  &  &  &  & 17 & N.O. &  0 $\Omega$ & GND \\
            \hline
            &  &  &  &  &  & N.C. &  Open & Open \\
            \cline{6-9}
            3 & RIO & RIO\_T2\_DATA & RIO\_T2\_DATA & P3 & PCB-Cable & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SDA \\
            \cline{6-9}
            &  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\
            \hline
            &  &  &  &  &  & N.C. &  Open & Open \\
            \cline{6-9}
            4 &  &  &  & P3 &  & COM &  0 $\Omega$ &  \\
            \cline{6-9}
            &  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\
            \hline
            &  &  &  &  & 14 & N.C. &  Open & Open \\
            \cline{6-9}
            5 & RIO & RIO\_T1\_CLK & RIO\_T1\_CLK & P2 & 16 & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SCL1 \\
            \cline{6-9}
            &  &  &  &  & 18 & N.O. &  0 $\Omega$ &  \\
            \hline
            &  &  &  &  & 8 & N.C. &  Open & Open \\
            \cline{6-9}
            6 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_MGTVCCAUX & P2 & 10 & COM &  0 $\Omega$ & SIGN02672 \\
            \cline{6-9}
            &  &  &  &  & 12 & N.O. &  0 $\Omega$ &  \\
            \hline
            &  &  &  &  & 2 & N.C. &  Open & Open \\
            \cline{6-9}
            7 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_AVTT & P2 & 4 & COM &  0 $\Omega$ & SIGN02661 \\
            \cline{6-9}
            &  &  &  &  & 6 & N.O. &  0 $\Omega$ & Open \\
            \hline
        \end{tabular}
    \caption{Verkabelung der ersten Relaisplatine an X400/PortA}
\end{table}
\end{document}

相反specialcell(未在您的 MWE 中定义)我使用\makecell{...}来自包“makecell”的标准。

在此处输入图片描述

在上面的 MWE 中,我删除了\resizebox{\textwidth}{!}{%resizing the whole table ...},因为它的效果与将字体大小更改为 相同\tiny。这对读者来说可能是严重的问题,因为文本对于正常阅读来说太小了(请参阅我上面的评论)。

附录: 如果您考虑旋转表格,请查看以下 sMWE 是否可以帮助您。请注意,即使在其中并将字体大小缩小到\small,表格宽度也大于文本高度:

\documentclass[a4paper, 11pt, parskip]{scrreprt}
\usepackage{rotating}
\usepackage[table]{xcolor}
\usepackage{cellspace, makecell, multirow}% for tables
\setlength\cellspacetoplimit{3pt}       % additional top vertical spaces in cells
\setlength\cellspacebottomlimit{3pt}    % additional bottom vertical spaces in cells

%-------------------------------------- only for show page layout
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}
    \begin{sidewaystable}
    \centering
    \small
\begin{tabular}{|c|c|c|c|c|c|Sc|c|c|}% added S foractivate additional vertical spaces in cels
    \hline
\multicolumn{9}{|Sc|}{Relaisplatine} \\
    \hline
\makecell{Relay\\ Nr.} & Part & Test-Id & \makecell[c]{Signal-Name \\for Testcases} & Conn. & Pin & \makecell[c]{Pin-\\Func.} & R  & \makecell[c]{Influenced \\ Signal/Voltage }        \\
    \hline
\rowcolor[gray]{0.8}
&  &  &  &  & 1 & N.C. & Open & Open \\
    \cline{6-9}
0 & WFB & WFB\_VOLT\_SDAR & WFB\_CLOCK\_+1V8 & P2 & 3 & COM &  0 $\Omega$ & SIGN02659 \\
    \cline{6-9}
&  &  &  &  & 5 & N.O. &  0 $\Omega$ & GND \\
    \hline
&  &  &  &  & 7 & N.C. &  Open & Open \\
    \cline{6-9}
1 & WFB & WFB\_CLK & WFB\_CLKDIS153\_MUXOUT  & P2 & 9 & COM &  0 $\Omega$ & P5801 \\
    \cline{6-9}
&  &  &  &  & 11 & N.O. &  0 $\Omega$ & P5802 \\
    \hline
&  &  &  &  & 13 & N.C. &  Open & Open \\
    \cline{6-9}
2 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_VCORE & P2 & 15 & COM &  0 $\Omega$ & SIGN02652 \\
    \cline{6-9}
&  &  &  &  & 17 & N.O. &  0 $\Omega$ & GND \\
    \hline
&  &  &  &  &  & N.C. &  Open & Open \\
    \cline{6-9}
3 & RIO & RIO\_T2\_DATA & RIO\_T2\_DATA & P3 & PCB-Cable & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SDA \\
    \cline{6-9}
&  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\
    \hline
&  &  &  &  &  & N.C. &  Open & Open \\
    \cline{6-9}
4 &  &  &  & P3 &  & COM &  0 $\Omega$ &  \\
    \cline{6-9}
&  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\
    \hline
&  &  &  &  & 14 & N.C. &  Open & Open \\
    \cline{6-9}
5 & RIO & RIO\_T1\_CLK & RIO\_T1\_CLK & P2 & 16 & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SCL1 \\
    \cline{6-9}
&  &  &  &  & 18 & N.O. &  0 $\Omega$ &  \\
    \hline
&  &  &  &  & 8 & N.C. &  Open & Open \\
    \cline{6-9}
6 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_MGTVCCAUX & P2 & 10 & COM &  0 $\Omega$ & SIGN02672 \\
    \cline{6-9}
&  &  &  &  & 12 & N.O. &  0 $\Omega$ &  \\
    \hline
&  &  &  &  & 2 & N.C. &  Open & Open \\
    \cline{6-9}
7 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_AVTT & P2 & 4 & COM &  0 $\Omega$ & SIGN02661 \\
    \cline{6-9}
&  &  &  &  & 6 & N.O. &  0 $\Omega$ & Open \\
    \hline
\end{tabular}
\caption{Verkabelung der ersten Relaisplatine an X400/PortA}
    \end{sidewaystable}
\end{document}

答案2

{NiceTabular}有一把与 兼容的nicematrix钥匙。cell-space-limits\rowcolor

\documentclass[a4paper, 11pt, parskip]{scrreprt}
\usepackage{xcolor}
\usepackage{nicematrix}

\begin{document}
\begin{table}%[ht]
    \tiny
    \setlength\tabcolsep{3pt}
    \centering
        \begin{NiceTabular}{|c|c|c|c|c|c|c|c|c|}[colortbl-like,cell-space-limits=4pt]
            \hline
            \Block{1-9}{\normalsize Relaisplatine} \\
            \hline
\Block{}{Relay\\ Nr.} & Part & Test-Id & \Block{}{Signal-Name \\for Testcases} & Conn. & Pin & \Block{}{Pin-\\Func.} & R  & \Block{}{Influenced \\ Signal/Voltage } \\
            \hline
            \rowcolor[gray]{0.8}
            &  &  &  &  & 1 & N.C. & Open & Open \\
            \cline{6-9}
            0 & WFB & WFB\_VOLT\_SDAR & WFB\_CLOCK\_+1V8 & P2 & 3 & COM &  0 $\Omega$ & SIGN02659 \\
            \cline{6-9}
            &  &  &  &  & 5 & N.O. &  0 $\Omega$ & GND \\
            \hline
            &  &  &  &  & 7 & N.C. &  Open & Open \\
            \cline{6-9}
            1 & WFB & WFB\_CLK & WFB\_CLKDIS153\_MUXOUT  & P2 & 9 & COM &  0 $\Omega$ & P5801 \\
            \cline{6-9}
            &  &  &  &  & 11 & N.O. &  0 $\Omega$ & P5802 \\
            \hline
            &  &  &  &  & 13 & N.C. &  Open & Open \\
            \cline{6-9}
            2 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_VCORE & P2 & 15 & COM &  0 $\Omega$ & SIGN02652 \\
            \cline{6-9}
            &  &  &  &  & 17 & N.O. &  0 $\Omega$ & GND \\
            \hline
            &  &  &  &  &  & N.C. &  Open & Open \\
            \cline{6-9}
            3 & RIO & RIO\_T2\_DATA & RIO\_T2\_DATA & P3 & PCB-Cable & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SDA \\
            \cline{6-9}
            &  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\
            \hline
            &  &  &  &  &  & N.C. &  Open & Open \\
            \cline{6-9}
            4 &  &  &  & P3 &  & COM &  0 $\Omega$ &  \\
            \cline{6-9}
            &  &  &  &  & PCB-Cable & N.O. &  0 $\Omega$ & GND \\
            \hline
            &  &  &  &  & 14 & N.C. &  Open & Open \\
            \cline{6-9}
            5 & RIO & RIO\_T1\_CLK & RIO\_T1\_CLK & P2 & 16 & COM &  0 $\Omega$ & RIO\_GPP\_I2C\_SCL1 \\
            \cline{6-9}
            &  &  &  &  & 18 & N.O. &  0 $\Omega$ &  \\
            \hline
            &  &  &  &  & 8 & N.C. &  Open & Open \\
            \cline{6-9}
            6 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_MGTVCCAUX & P2 & 10 & COM &  0 $\Omega$ & SIGN02672 \\
            \cline{6-9}
            &  &  &  &  & 12 & N.O. &  0 $\Omega$ &  \\
            \hline
            &  &  &  &  & 2 & N.C. &  Open & Open \\
            \cline{6-9}
            7 & WFB & WFB\_VOLT\_SDAR & WFB\_WF\_FPGA\_AVTT & P2 & 4 & COM &  0 $\Omega$ & SIGN02661 \\
            \cline{6-9}
            &  &  &  &  & 6 & N.O. &  0 $\Omega$ & Open \\
            \hline
        \end{NiceTabular}
    \caption{Verkabelung der ersten Relaisplatine an X400/PortA}
\end{table}
\end{document}

您需要进行多次编译(因为nicematrix在后台使用了 PGF/Tikz)。

上述代码的输出

相关内容