Rescaling a math symbol?

The AMS classes have a \larger command that works out of the box:

\documentclass{amsart}
\newcommand{\Alpha}{\mbox{\larger$\alpha$}}

\begin{document}
$\alpha\Alpha$

\Large
$\alpha\Alpha$

\end{document}

enter image description here

This won't work in subscripts/superscripts, though. Unfortunately \text doesn't update \@currsizeindex, so using \text instead of \mbox, which would be the obvious attempt, doesn't give the desired result.

A possible way out is to update the sizes manually:

\documentclass{amsart}
%\newcommand{\Alpha}{\mbox{\larger$\alpha$}}

\newcommand{\Alpha}{\mathchoice
  {\mbox{\larger$\alpha$}}
  {\mbox{\larger$\alpha$}}
  {\mbox{\larger[-2]$\alpha$}}
  {\mbox{\larger[-4]$\alpha$}}
}

\begin{document}
$\alpha\Alpha_{\alpha\Alpha_{\alpha\Alpha}}$

\Large
$\alpha\Alpha_{\alpha\Alpha_{\alpha\Alpha}}$

\end{document}

enter image description here


You can achieve arbitrary scaling with the scalerel package. I demonstrate here with \Alpha as 1.5 times the original. (Note: in this case, \scaleobj is functionally equivalent to a \scalebox that defaults to math mode).

It also automatically obeys the current math style, as shown in the second line.

\documentclass{article}
\usepackage{scalerel}[2016/12/29]
\newcommand\Alpha{\scaleobj{1.5}{\alpha}}
\begin{document}
\( \alpha\Alpha \)

\(\Alpha^{\Alpha^{\Alpha}}\) versus
\(\alpha^{\alpha^{\alpha}}\)
\end{document}

enter image description here

Tags:

Scaling