我正在尝试排版一首歌曲,其中有些歌词是重复的。为了辨别它们是什么,我使用右花括号将它们分组。
以下是 MWE:
\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage{verse}
\usepackage{amsmath}
\newenvironment{rcases}
{\left.\begin{aligned}}
{\end{aligned}\right\rbrace}
\begin{document}
\begin{verse}
la la\\
\begin{equation*}
\begin{rcases}
\text{blah blah}\\
\text{ha ha ha}\\
\end{rcases}
\text{repeat 2 times}
\end{equation*}
\end{verse}
\end{document}
输出:
不幸的是,公式中的文本居中。我怎样才能将其左对齐?
这不是一个方程式,但我不知道如何在不使用方程式技巧的情况下实现这种非标准要求并标记重复的线。
答案1
不要使用显示方程式环境。请改用内联数学模式。
\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage{verse}
\usepackage{amsmath}
\newenvironment{rcases}
{\left.\begin{aligned}}
{\end{aligned}\right\rbrace}
\begin{document}
\begin{verse}
la la\\
$
\begin{rcases}
\text{blah blah}\\
\text{ha ha ha}\\
\end{rcases}
\text{repeat 2 times}
$
\end{verse}
\end{document}
附录:正如@Bernard 在评论中指出的那样,rcases
环境是由包定义的mathtools
。与其在环境中使用低级数学命令verse
,不如创建一个专用宏(\vrepeat
如下所示;它需要两个参数),这样您就可以实现所需的格式。
\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage{verse,amsmath,mleftright}
\newcommand\vrepeat[2]{%
\smallskip$\mkern-1.7mu\mleft.\begin{tabular}{@{}l@{}}
#1\end{tabular}\mright\}$#2}
\begin{document}
\begin{verse}
la la\\
\vrepeat{blah blah\\
ha ha}{
repeat 2 times}\\
la la la
\end{verse}
\end{document}
答案2
无需数学:您可以使用blkarray
包:
\documentclass[12pt]{article}
\usepackage{ebgaramond}
\usepackage[english]{babel}
\usepackage{verse}
\usepackage{blkarray}
\begin{document}
\begin{verse}
La la la\\
La la la\\[1ex]
\begin{blockarray}{@{}l\Right{\}}{\footnotesize\enspace Repeat twice}}
blah blah\\
ha ha ha
\end{blockarray}\\[ -2ex]
La la la \end{verse}
\end{document}
答案3
如果你愿意移动重复的部分外部在诗歌环境中,这是另一种方法,您可以微调一些参数。
\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage{verse}
\usepackage[fleqn]{amsmath}
\newenvironment{rcases}
{\left.\begin{aligned}}
{\end{aligned}\right\rbrace}
\setlength{\mathindent}{26pt} % <--- fine tune
\begin{document}
\begin{verse}
la la\\
\end{verse}
\vspace{-1.4\baselineskip} % <--- fine tune
\begin{align*}
\begin{rcases}
\text{blah blah}\\
\text{ha ha ha}\\
\end{rcases}&\text{\ repeat 2 times}&
\end{align*}
\end{document}