
Quero uma chave direita que ocupe algumas linhas de texto e esteja localizada no lado direito da página.\
Algo assim :
Relacionado :colchetes - Adicionando uma chave grande ao lado de um corpo de texto
Aqui, o código a seguir parece não funcionar:
$\left.\begin{tabular}{l}
line \\
one more line
\end{tabular}\hfill\right\}$
Existem alternativas para \hfill
que isso funcione?
Responder1
Eu abusaria equation*
por alguns motivos:
- espaçamento vertical automático ao redor da construção;
- evitando quebras de página antes da construção.
O conteúdo do braceonright
ambiente é composto como um tabular
e reutilizado para obter o tamanho certo da chave. Isso é necessário, porque \hfill
não faz nada se estiver dentro de um \left
par \right
.
\documentclass{article}
\usepackage{amsmath}
\usepackage{lipsum} % for mock text
\newsavebox{\braceonrightbox}
\newenvironment{braceonright}
{%
\begin{equation*}% abuse equation* for spacing and other features
\hspace{0pt}% necessary
\begin{lrbox}{\braceonrightbox}% save the contents
\begin{tabular}{@{}l@{}}%
}
{%
\end{tabular}%
\end{lrbox}%
\usebox{\braceonrightbox}
\hspace{1000pt minus 1fil}
\left.\vphantom{\usebox{\braceonrightbox}}\right\rbrace
\end{equation*}\ignorespacesafterend
}
\begin{document}
\lipsum[1][1-6]
\begin{braceonright}
line \\
one more line
\end{braceonright}
\lipsum[2]
\end{document}
O truque é adicionar um espaço muito grande (1000pt) que pode ser reduzido para a largura real; para que isso funcione, deve haver alguma cola (0pt) no início da “equação”.