如何在 longtable 中的某些行上跨越括号?

如何在 longtable 中的某些行上跨越括号?

目标方法是将括号 ( longtable) 放入表中以包含该表的某些行: 在此处输入图片描述

解决方案rdelim涉及\multirows(此处描述:使用\rdelim) 给出不一致的括号宽度以及不一致的括号线宽度,而不同的括号具有不同的跨度:\rdelim例子

因此,问题的自然解决方案是将“记住的图片”放入表中,并跨越作为“装饰”的括号:装饰\longtable

问题节点可以移动到下一页: 在此处输入图片描述 在此处输入图片描述

要做什么才能防止节点逃逸到下一页?

给出的数学公式的解(强制节点不前往下一页) 在这里不起作用。

梅威瑟:

\documentclass[12pt,a5paper,twoside]{article}
\usepackage[polish]{babel}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{tikz}
\usepackage[a5paper]{geometry}
\usetikzlibrary{decorations.pathreplacing}

\begin{document}
\begin{longtable}{p{3cm}p{3cm}}
    \toprule
    first column & second column\tikz [remember picture] \node (rightmark) {};\\
    \midrule
    \endhead
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    B & B \tikz [remember picture] \node (n1) {};\\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \tikz [remember picture] \node (n2) {};\\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    \bottomrule
\end{longtable}
% curly brace
\tikz [overlay,remember picture]
      \draw [decoration={brace,amplitude=2mm},decorate,thick]
      (n1.north -| rightmark) -- (n2.south -| rightmark)
      node [midway,right=4mm,align=left] {The bracket\\spanned on\\some rows};
\end{document}

答案1

您链接的问题中给出的解决方案(我怎样才能让我的 TikZ 覆盖图片保持在同一页面上?确实有效在此,含义如下:

\begin{longtable}{p{3cm}p{3cm}}
    \toprule
    first column & second column\tikz [remember picture] \node (rightmark) {};\\
    \midrule
    \endhead
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    A & A \\
    B & B \tikz [remember picture] \node (n1) {};\\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \\*
    B & B \tikz [remember picture] \node (n2) {};%
    \tikz [overlay,remember picture]
      \draw [decoration={brace,amplitude=2mm},decorate,thick]
      (n1.north -| rightmark) -- (n2.south -| rightmark)
      node [midway,right=4mm,align=left] {The bracket\\spanned on\\some rows};\\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    C & C \\
    \bottomrule
\end{longtable}%

输出

注意%绘制命令后的;否则第一个条目 C 将向右移动。显然,此解决方案仅在两个节点位于同一页时才有效。

否则,你就得看看这个问题的答案Tikz - 如何在长桌上覆盖装饰您已经链接了。

相关内容