NiceTabular 中块之间的间隙

NiceTabular 中块之间的间隙

以下是我的示例的起点:

\begin{NiceTabular}{c c c c c c}
\hline
x & x & x & x & x & x \\
x & \Block[draw=black]{1-5}{thin} \\
x & x & x & x & \Block[draw=black]{3-2}{tall} \\
x & x & x & x \\
x & x & x & x \\
\hline
\end{NiceTabular}

这将创建:

我现在太累了,想不出图片描述,请原谅我

我不希望高块接触底部或薄块。修复第一部分很容易:

\begin{NiceTabular}{c c c c c c}
\hline
x & x & x & x & x & x \\
x & \Block[draw=black]{1-5}{thin} \\
x & x & x & x & \Block[draw=black]{3-2}{tall} \\
x & x & x & x \\
x & x & x & x \\
\\[-3mm]
\hline
\end{NiceTabular}

我现在太累了,想不出图片描述,请原谅我

但是,当我对顶部边距尝试相同操作时,会发生以下情况:

\begin{NiceTabular}{c c c c c c}
\hline
x & x & x & x & x & x \\
x & \Block[draw=black]{1-5}{}  \\
\\[-3mm]
x & x & x & x & \Block[draw=black]{3-2}{tall} \\
x & x & x & x \\
x & x & x & x \\
\\[-3mm]
\hline
\end{NiceTabular}

我现在太累了,想不出图片描述,请原谅我

现在,高块不再足够高,无法覆盖顶行。

如何在不影响行/块大小的情况下在行/块之间创建一个小间隙?

答案1

这是一个缩小矩形所有边的解决方案。

\documentclass{article}
\usepackage{nicematrix,tikz}

\begin{document}

\begin{NiceTabular}{c c c c c c}
\hline
x & x & x & x & x & x \\
x & \Block[tikz={offset=0.5pt,draw}]{1-5}{thin} \\
x & x & x & x & \Block[tikz={offset=0.5pt,draw}]{3-2}{tall} \\
x & x & x & x \\
x & x & x & x \\
\\[-4mm]
\hline
\end{NiceTabular}

\end{document}

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

第一个代码的输出


如果您不想水平缩小,总是可以使用 TikZ 和在nicematrix表格的单元格、行和列下创建的 PGF/TikZ 节点来绘制任何您想要的内容。

\documentclass{article}
\usepackage{nicematrix,tikz}

\begin{document}

\begin{NiceTabular}{c c c c c c}
  \Hline
  x & x & x & x & x & x \\
  x & \Block{1-5}{thin} \\[1mm]
  x & x & x & x & \Block{3-2}{tall} \\
  x & x & x & x \\
  x & x & x & x \\[1mm]
  \Hline
\CodeAfter
  \begin{tikzpicture}  
    \draw (2-|2) rectangle ([yshift=1mm]3-|last) ; 
    \draw (3-|5) rectangle ([yshift=1mm]6-|last) ; 
  \end{tikzpicture}
\end{NiceTabular}

\end{document}

第二段代码的输出

相关内容