Ispirato da questo topic ho realizzato la seguente tabella:
`
\documentclass[a4paper]{article}
\usepackage{multirow}\begin{document}
\begin{table}[tb]
\centering
\begin{tabular}{ll}
Abitante & Descrizione\\
\hline
Paperon de Paperoni & Fantastiliardario\\
Paolino Paperino & Nipote sfaticato di PdP\\
Qui & \multirow{3}{*}{$\left.\rule{0pt}{18pt}\right\}$Nipoti di Paperino}\\
Quo & \\
Qua & \\
Paperina & Fidanzata di Paperino\\
\end{tabular}
\caption{Abitanti di Paperopoli}
\label{tab:paperi}
\end{table}
\end{document}`
(il vero contenuto non è esattamente questo, lo ammetto 🙂 ), mi chiedevo se c’è un modo per determinare automaticamente l’altezza della graffa invece che andare per tentativi con un valore numerico come ho fatto io.
Non con multirow.
`\newbox\bracedbox
\newdimen\bracedboxht
\newenvironment{braced}[1][l]
{\setbox\bracedbox=\hbox\bgroup\begin{tabular}{@{}#1@{}}}
{\end{tabular}\egroup
\global\bracedboxht=\ht\bracedbox
\global\advance\bracedboxht\dp\bracedbox
\global\advance\bracedboxht-3pt
\box\bracedbox}
\newcommand\embrace[1]{%
$\left\rbrace\vcenter{\hbox{\vrule width 0pt height\bracedboxht}}\right.$\ #1}`
I nomi da raggruppare con la graffa vengono composti in una tabella a una colonna, ma prima questa è posta in una box che possiamo misurare. L’altezza complessiva di questa box è memorizzata (globalmente perché altrimenti TeX la dimenticherebbe passando alla cella successiva) e usata nella cella successiva per costruire una formula invisibile delle giuste dimensioni che possiamo circondare con \left e \right. Con una piccola riduzione che mi sembra adatta.
`\begin{tabular}{ll}
Abitante & Descrizione\\
\hline
Paperon de Paperoni & Fantastiliardario\\
Paolino Paperino & Nipote sfaticato di PdP\\
\begin{braced}
Qui \\
Quo \\
Qua
\end{braced} & \embrace{Nipoti di Paperino}\\
Paperina & Fidanzata di Paperino
\end{tabular}`
Ciao
Enrico