與 LaTeX 中的“alignedat”或“aligned”相比,“array”在方程式中使用較小的字體嗎?

與 LaTeX 中的“alignedat”或“aligned”相比,“array”在方程式中使用較小的字體嗎?

array有時,使用LaTeX 來對齊方程式中的某些內容會更方便。但是,arrayalignedat或相比, 會顯示較小的字體aligned

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
    \left.
    \begin{alignedat}{10}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
    \end{alignedat}
    \right\}
\end{equation} 
\begin{equation}
    \left.
        \begin{aligned}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
        \end{aligned}
    \right\}
\end{equation}
\begin{equation}
    \left.
    \begin{array}{r@{\:}c@{\:}l}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
    \end{array}
    \right\}
\end{equation}
\end{document}

在此輸入影像描述

那麼,要如何將字體變array大呢?

答案1

環境array使用\textstyle,邊使用邊equation使用\displaystyle。你需要用力\displaystyle進入每一個細胞。

LaTeX 表格的列定義擴展為大批包裹。特別是,>{<something>}<something> 在以下列中每個單元格的內容之前

在您的範例中,您有兩列。\displaystyle僅第二個需要。使用:

\begin{array}{@{} r @{\;} >{\displaystyle} l @{}}

(由於 Mico 的評論,我更正了空格)。

如果需要,定義一個新的列類型修飾符,例如

\newcolumntype{D}[1]{>{\displaystyle} #1}

並用作@{} r @{\;} D{l} @{}表格規格(或定義三個新的列類型\newcolumntype{C}{>{\displaystyle} c}, \newcolumntype{L}{>{\displaystyle} l}, \newcolumntype{R}{>{\displaystyle} r})。

完整範例:

\documentclass{article}
\usepackage{array}

\usepackage{amsmath}

\newcolumntype{D}[1]{>{\displaystyle} #1}

\begin{document}
\begin{equation}
    \left.
    \begin{alignedat}{10}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
    \end{alignedat}
    \right\}
\end{equation}
\begin{equation}
    \left.
        \begin{aligned}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
        \end{aligned}
    \right\}
\end{equation}
\begin{equation}
    \left.
    \begin{array}{@{} D{r} @{\;} D{l} @{}}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
    \end{array}
    \right\}
\end{equation}
\end{document}

完整的例子

作為替代方案,您可以嘗試現代套餐表格陣列:

\documentclass{article}

\usepackage{tabularray}
\usepackage{amsmath}

\begin{document}
\begin{equation}
    \left.
    \begin{alignedat}{10}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
    \end{alignedat}
    \right\}
\end{equation}
\begin{equation}
    \left.
        \begin{aligned}
            f_\mathrm{1}&=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
        \end{aligned}
    \right\}
\end{equation}
\begin{equation}
  \left.
    \begin{tblr}
      {
        colspec = {rl},
        columns = {mode=dmath},
        colsep = 0pt,
      }
      f_\mathrm{1}&{}=\frac{\|\mathrm{AB}\|}{\|\mathrm{CD}\|}\\
    \end{tblr}
    \right\}
\end{equation}
\end{document}

表格射線替代方案

答案2

{alignedat}{10}當每行只有一個對齊點時,我看不出使用的有效理由;為什麼不使用{aligned}環境呢?順便說一句,在OP的範例中,實際上兩者都{alignedat}{10}沒有{aligned}做任何有用的事情,因為每個環境中只有一行。換句話說,這些環境是不是執行與對齊相關的任何操作。這個問題實際上在OP的螢幕截圖中很明顯,它顯示這三個=符號是未對齊與彼此。

因此,我提出了一個解決方案,用單一環境取代三個單獨的equation環境(每個環境包含單行環境)。請注意,符號現在已對齊。此外,環境的內容預設以顯示樣式數學模式排版。{alignedat}{10}align=align

除了切換到單一align環境之外,我還會 (a) 載入該mathtools套件(該套件是該套件的超集合)amsmath,以 (b) 定義一個名為 的宏\norm,以及 (c)\|\mathrm{AB}\|將的所有實例替換為\norm{\mathrm{AB}}。順便說一句,$\mathrm{1}$光是寫作是沒有意義的$1$

在此輸入影像描述

\documentclass{article}
\usepackage{mathtools} % for '\DeclarePairedDelimiter' macro
\DeclarePairedDelimiter{\norm}{\lVert}{\rVert}

\begin{document}
\begin{align}
f_{1}&=\left.\frac{\norm{\mathrm{AB}}}{\norm{\mathrm{CD}}}\right\}\\
f_{1}&=\left.\frac{\norm{\mathrm{AB}}}{\norm{\mathrm{CD}}}\right\}\\
f_{1}&=\left.\frac{\norm{\mathrm{AB}}}{\norm{\mathrm{CD}}}\right\}
\end{align}
\end{document}

相關內容