在對齊環境中變更數組的字體大小

在對齊環境中變更數組的字體大小

我試圖在一個很長的方程中同時標記幾行。從這個問題我想出了以下最小的例子:

\documentclass{report}
\usepackage[onehalfspacing]{setspace}
\usepackage{amsmath}
\begin{document}
\begin{align*}
    x &= \sum_i c_i X_i \\
    &\left. \def\arraystretch{1.5}
    \begin{array}{l}
    + \sum_i c_i Y_i \\
    +\sum_i c_i Z_i 
    \end{array} 
    \right\} \tag{From (1)} \\
\end{align*}
\end{document}

這會產生

最小的例子

正如你所看到的,我試圖糾正這樣一個事實:預設情況下,數組的行間距比對齊*更小。但是,我無法使字體大小匹配,行間距也確實不太好。我嘗試過使用 begingroup、endgroup 但似乎不起作用。我真的很感激任何幫助!

答案1

如果我正確理解你的問題,你可以利用mathtools'drcases環境(d代表顯示風格, whiler表示大括號位於右側):

\documentclass[preview]{standalone}
\usepackage{mathtools}
\begin{document}
\begin{align*}
    x &= \sum_i c_i X_i \\
      &\hphantom{={}}\!\begin{drcases} % <--- \! is to get correct spacing/alignment
          + \sum_i c_i Y_i \\
          + \sum_i c_i Z_i 
        \end{drcases} 
    \tag{From (1)} \\
\end{align*}
\end{document}

輸出

如果您希望數學和大括號之間有更多空間,可以\quad 在最長行的末尾添加(或任何其他空格):

\documentclass[preview]{standalone}
\usepackage{mathtools}
\begin{document}
\begin{align*}
    x &= \sum_i c_i X_i \\
      &\hphantom{={}}\!\begin{drcases} % <--- \! is to get correct spacing/alignment
          + \sum_i c_i Y_i \quad\\
          + \sum_i c_i Z_i 
        \end{drcases} 
    \tag{From (1)} \\
\end{align*}
\end{document}

輸出空間更大

\\另一種可能性(不太「自動」)是在as in後面的方括號中給出額外的行距\\[.5em],這將在您要結束的行之後給出額外的 0.5 em 行距。

相關內容