以下是我的示例的起点:
\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}