"Array" usa fonte menor na equação em comparação com "alignedat" ou "aligned" no LaTeX?

"Array" usa fonte menor na equação em comparação com "alignedat" ou "aligned" no LaTeX?

Às vezes, é mais conveniente usar arraypara alinhar algo em equações em LaTeX. No entanto, o arrayexibe uma fonte menor em comparação com alignedatou 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}

insira a descrição da imagem aqui

Então, como aumentar a fonte array?

Responder1

O arrayambiente usa \textstyle, enquanto equationusa \displaystyle. Você precisa forçar \displaystylecada célula.

A definição de colunas do LaTeX tabular é estendida pelovariedadepacote. Em particular, >{<something>}coloque<something> antes do conteúdo de cada célula na coluna seguinte.

No seu exemplo, você tem duas colunas. \displaystylesó é necessário para o segundo. Usar:

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

(corrigi os espaços graças aos comentários do Mico).

Se necessário, defina um novo modificador de tipo de coluna, como

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

e use @{} r @{\;} D{l} @{}como especificação tabular (ou defina três novos tipos de coluna ,,, \newcolumntype{C}{>{\displaystyle} c}) .\newcolumntype{L}{>{\displaystyle} l}\newcolumntype{R}{>{\displaystyle} r}

Exemplo completo:

\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}

exemplo completo

Como alternativa você pode experimentar o pacote modernotabela tabular:

\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}

alternativa tabularray

Responder2

Não consigo ver um motivo válido para usar {alignedat}{10}quando há um único ponto de alinhamento por linha; por que não usar um {aligned}ambiente? A propósito, nem {alignedat}{10}estamos {aligned}fazendo nada de útil no exemplo do OP, pois há apenas uma única linha em cada um desses ambientes. Em outras palavras, esses ambientes sãonãorealizando qualquer coisa relacionada ao alinhamento. Este problema é realmente evidente na captura de tela do OP, que mostra que os três =símbolos sãonão alinhadoum com o outro.

Proponho, portanto, uma solução que substitua os três equationambientes separados, cada um contendo um ambiente de uma linha {alignedat}{10}, por um único alignambiente. Observe que os =símbolos agora estão alinhados. Além disso, o conteúdo de um alignambiente é composto no modo matemático de estilo de exibição por padrão.

Além de mudar para um único alignambiente, eu (a) carregaria o mathtoolspacote, que é um superconjunto do amsmathpacote, para (b) definir uma macro chamada \norme (c) substituir todas as instâncias de \|\mathrm{AB}\|por \norm{\mathrm{AB}}. Aliás, não adianta escrever $\mathrm{1}$em vez de apenas $1$.

insira a descrição da imagem aqui

\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}

informação relacionada