我想要一个横跨几行文本且位于页面最右侧的右括号。\
像这样:
有关的 :括号 - 在正文旁边添加一个大括号
这里,以下代码似乎不起作用:
$\left.\begin{tabular}{l}
line \\
one more line
\end{tabular}\hfill\right\}$
有没有\hfill
可行的替代方案?
答案1
我滥用它equation*
有几个原因:
- 建筑物周围自动垂直限位;
- 避免在构造之前出现分页符。
环境的内容braceonright
被排版为,tabular
并重新用于获取括号的正确大小。这是必要的,因为如果在-对内\hfill
则不执行任何操作。\left
\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}
诀窍是添加一个非常大的空间(1000pt),该空间可以缩小到实际宽度;为了使其工作,“等式”的开头必须有一些粘连(0pt)。