Я пытаюсь создать список элементов, который выглядит примерно так:
но я не могу понять, как правильно расположить скобу. Вот что у меня сейчас есть, за исключением скобы (которую я отредактировал на скриншоте):
\documentclass{article}
\begin{document}
\begin{tabular}{rcl}
full-time & $\mapsto$ & $1$ \\
\begin{tabular}{@{}r@{}}
part-time \\
not at all \\
don't know
\end{tabular} & $\mapsto$ & $0$ \\
refused & $\mapsto$ & missing
\end{tabular}
\end{document}
Я знаю несколько разных решений, которые используют преимущества \left. \right}
в математическом режиме, но я не могу выровнять текстовые элементы таким образом. И еще одно решение, использующее bigdelim
просто, похоже, не работает. Я бы также предпочел не использовать Tikz, если я могу этого избежать.
Вот более развернутый пример, который больше похож на тот, что есть в моем реальном документе:
\documentclass{article}
\usepackage{multirow,bigdelim}
\begin{document}
Text goes here
\begin{description}
\item[\texttt{bigdelim}]
\begin{itemize}
\item[]
\item[Sub-Thing:] Text goes here
\item[Sub-Thing:]
\begin{tabular}{rcl}
full-time & $\mapsto$ & $1$ \\
part-time & & \\
not at all & & \\
don't know & $\rdelim){-3}{*}$ & \multirow{-3}{*}{$0$} \\ % rdelim} doesn't work anyway
refused & $\mapsto$ & missing
\end{tabular}
\end{itemize}
\item[\texttt{tabular}]
\begin{itemize}
\item[]
\item[Sub-Thing:] Text goes here
\item[Sub-Thing:]
\begin{tabular}{rcl}
full-time & $\mapsto$ & $1$ \\
\begin{tabular}{@{}r@{}}
part-time \\
not at all \\
don't know
\end{tabular} & $\mapsto$ & $0$ \\
refused & $\mapsto$ & missing
\end{tabular}
\end{itemize}
\end{description}
Text goes here
\end{document}
решение1
С некоторой помощью xparse
(чтобы легко определить \source
команду с *-вариантом) и array
для нового типа столбца:
\documentclass{article}
\usepackage{xparse,array}
\NewDocumentCommand{\source}{sm}{%
\IfBooleanTF{#1}{\bracedsource{#2}}{#2 &}%
}
\NewDocumentCommand{\bracedsource}{m}{%
\global\setbox9=\hbox{%
\begin{tabular}{@{}r@{}}#1\end{tabular}%
}%
\copy9 & $\left.\hbox{\vphantom{\box9}}\right\rbrace$%
}
\newcolumntype{s}{r@{}c}
\begin{document}
\begin{tabular}{scl}
\source{full-time} & $\mapsto$ & $1$ \\
\source*{
part-time \\
not at all \\
don't know
} & $\mapsto$ & $0$ \\
\source{refused} & $\mapsto$ & missing
\end{tabular}
\end{document}
Когда \source*
используется, аргумент может содержать \\
и он создаст фигурную скобку подходящего размера. Обратите внимание, что столбец, содержащий источники, должен быть помечен как s
(измените символ, если вы также загружаете, siunitx
что вытесняет тип столбца).
решение2
Ну вот.
\documentclass{article}
\usepackage{multirow,bigdelim}
\begin{document}
Text goes here
\begin{description}
\item[\texttt{bigdelim}]
\begin{itemize}
\item[]
\item[Sub-Thing:] Text goes here
\item[Sub-Thing:]
\begin{tabular}{r@{}cl}
full-time & & $\mapsto 1$ \\
part-time & & \\
not at all & & \\
don't know & $\rdelim\}{-3}{-0.1em}$ & \multirow{-3}{*}{$\mapsto 0$} \\ % rdelim} doesn't work anyway
refused & & $\mapsto$ missing
\end{tabular}
\end{itemize}
\item[\texttt{tabular}]
\begin{itemize}
\item[]
\item[Sub-Thing:] Text goes here
\item[Sub-Thing:]
\begin{tabular}{rcl}
full-time & $\mapsto$ & $1$ \\
\hspace{\tabcolsep}$\left.\begin{tabular}{@{}r@{}}
part-time \\
not at all \\
don't know
\end{tabular}\right\}$\hspace{-\tabcolsep} & $\mapsto$ & $0$ \\
refused & $\mapsto$ & missing
\end{tabular}
\end{itemize}
\end{description}
Text goes here
\end{document}
Вот версия, которая использует rcases*
или drcases*
из mathtools
.
\documentclass{article}
\usepackage{mathtools}
\begin{document}
Text goes here
\begin{description}
\item[\texttt{rcases}]
\begin{itemize}
\item[]
\item[Sub-Thing:] Text goes here
\item[Sub-Thing:]
$\begin{aligned}
\text{full-time} &\mapsto 1 \\
\begin{drcases*}
& part-time \\
& not at all \\
& don't know
\end{drcases*} & \mapsto 0 \\
\text{refused} & \mapsto \text{missing}
\end{aligned}$
\end{itemize}
\end{description}
Text goes here
\end{document}
решение3
Другой способ, возможно, менее элегантный:
\documentclass{article}
\usepackage{MnSymbol}
\usepackage{multirow}
\begin{document}
\begin{tabular}{rcl}
full-time & $\mapsto$ & $1$ \\
\begin{tabular}{rl}
part-time & \multirow{3}{*}{\Huge{$\rbrace$}} \\
not at all & \\
don't know & \\
\end{tabular} & $\mapsto$ & $0$ \\
refused & $\mapsto$ & missing
\end{tabular}
\end{document}