「array」は、LaTeX の「alignedat」や「aligned」と比べて、数式で小さいフォントを使用しますか?

「array」は、LaTeX の「alignedat」や「aligned」と比べて、数式で小さいフォントを使用しますか?

array場合によっては、 LaTeX の数式内で何かを揃えるには を使用する方が便利です。ただし、は やarrayに比べて小さいフォントで表示されます。alignedataligned

\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では が使用され\textstyleequationが使用されます。すべてのセルに を\displaystyle強制する必要があります。\displaystyle

LaTeX表形式の列定義は、配列>{<something>}パッケージ。特に、<something> 次の列のすべてのセルの内容の前

この例では、2 つの列があります。\displaystyleは 2 番目の列にのみ必要です。以下を使用します。

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

(Mico さんのコメントのおかげでスペースを修正できました)。

必要に応じて、新しい列タイプ修飾子を定義します。

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

表形式の仕様として使用します@{} r @{\;} D{l} @{}(または、3 つの新しい列タイプ\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}

tabularray の代替

答え2

{alignedat}{10}行ごとに1つのアラインメントポイントがある場合にを使用する正当な理由がわかりません。なぜ{aligned}環境を使用しないのですか? ちなみに、 OPの例では、これらの環境にはそれぞれ1つの行しかないため、{alignedat}{10}も も{aligned}実際には何も役に立ちません。言い換えると、これらの環境はない配置に関連する操作を実行できません。この問題は、3つの=シンボルが整列していないお互いに。

equationそこで、それぞれ 1 行の{alignedat}{10}環境を含む 3 つの個別の環境を 1 つの環境に置き換えるソリューションを提案します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}

関連情報