如何获得每个单元格都有一个角切的表格?

如何获得每个单元格都有一个角切的表格?

我想要实现的是一个表格,其中每个单元格的右下角都被切掉,如下所示: 在此处输入图片描述

切除部分应为静态尺寸。如何实现这样的效果?

答案1

{NiceTabular}这是使用的解决方案nicematrix。该环境类似于{tabular}(包 的array)标准,但还会在行、列和单元格下创建 PGF/Tikz 节点。然后,可以将这些节点与 Tikz 一起使用。在下面的代码中,我使用 Tikz 和这些节点创建小的白色三角形。

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

\begin{document}

\renewcommand{\arraystretch}{1.2}

\begin{NiceTabular}{cccc}[hvlines-except-borders,rules={color=white,width=1pt}]
\CodeBefore
  \rowcolor{red!15}{1}
  \rowcolor{blue!15}{2-}
\Body
  some text & other & other & other \\
  some text & other & other & other \\
  some text & other & other & other \\
  some text & other & other & other \\
\CodeAfter
  \begin{tikzpicture}[color = white]
  \foreach \i in {2,...,\inteval{\value{iRow}+1}} 
    {
      \foreach \j in {2,...,\inteval{\value{jCol}+1}}
        { 
          % for technical reasons, the last column needs a special treatment: 
          % we translate by the width of the rules
          \ifthenelse{\j>\value{jCol}}
          { \fill ([xshift=1pt]\i-|\j) -- ++ (0,2mm) -- ++ (-2mm,-2mm) -- cycle ; }
          { \fill (\i-|\j) -- ++ (0,2mm) -- ++ (-2mm,-2mm) -- cycle ; }
        }
    }
  \end{tikzpicture}
\end{NiceTabular}

\end{document}

您需要多次编译(因为 PGF/Tikz 节点)。

上述代码的输出

相关内容