如何在 longtable 环境中使用 \tabitem 和(类似) \linebreak?

如何在 longtable 环境中使用 \tabitem 和(类似) \linebreak?

\tabitem定义为

\usepackage{booktabs}% http://ctan.org/pkg/booktabs
\newcommand{\tabitem}{~~\llap{\textbullet}~~}

如上所述这里

此代码

\begin{table}[h]
    \centering
    \begin{tabular}{|l|r|r|r|}
        \hline
        \textbf{Caption} & \textbf{One} & \textbf{Two} & \textbf{Three} \\ \hline\hline
        \textbf{First section} & & & \\ \hline\hline
        \tabitem Row 1 & 1 & 2 & 3 \\ \hline
        \tabitem Row 2 & 4 & 5 & 6 \\ \hline\hline
        \begin{tabular}[c]{@{}l@{}}\textbf{Second section with a very long}\\\textbf{title that needs a line break}\end{tabular} & & & \\ \hline\hline
        \tabitem Row 3 & 7 & 8 & 9 \\ \hline
        \tabitem Row 4 & 10 & 11 & 12 \\ \hline
    \end{tabular}
    \caption{Example table}
\end{table}

生成如下表:

在此处输入图片描述

但我不知道如何在该longtable环境中实现这样的结果。我猜代码必须以不同的方式构建,因为例如,tabular它似乎无法在该环境中工作。

答案1

不用担心页码被剪裁。我只是想减少,paperheight这样你就能看到它的表现就像longtable

\ltabitem仅作为 的替代定义提供\tabitem。 任何一种都适用于任何情况。

\documentclass{article}
\usepackage[paperheight=2in]{geometry}
\usepackage{longtable}
\newcommand{\tabitem}{~~\llap{\textbullet}~~}
\newcommand\ltabitem{\makebox[1.3em][l]{\,$\bullet$}}
\begin{document}
\begin{longtable}{|l|r|r|r|}
        \hline
        \textbf{Caption} & \textbf{One} & \textbf{Two} & \textbf{Three} \\ \hline\hline
        \textbf{First section} & & & \\ \hline\hline
        \ltabitem Row 1 & 1 & 2 & 3 \\ \hline
        \tabitem Row 2 & 4 & 5 & 6 \\ \hline\hline
        \begin{tabular}[c]{@{}l@{}}\textbf{Second section with a very long}\\\textbf{title that needs a line break}\end{tabular} & & & \\ \hline\hline
        \tabitem Row 3 & 7 & 8 & 9 \\ \hline
        \tabitem Row 4 & 10 & 11 & 12 \\ \hline
    \caption{Example table}
\end{longtable}
\end{document}

在此处输入图片描述

相关内容