[Tex/LaTex] How to make proportional subscript when using smaller font in math mode

fontsfontsizemath-modesubscripts

How to make proportional subscript when using \tiny (or smaller than normal font size) in math mode?

The following screenshot shows subscripts for \tiny, \scriptsize and normal font sizes.

alt text

\documentclass{article}

\begin{document}

{\tiny$(x_1,y_1)$} is in tiny font.

\noindent{\scriptsize$(x_1,y_1)$} is in scriptsize font.

\noindent$(x_1,y_1)$ is in normal font.
\end{document}

Best Answer

Use \DeclareMathSizes{S}{t}{s}{ss}, which sets the math text font to size t, the scriptsize math font to size s, and the scriptscriptsize math font to ss whenever the main text font size is set to S.

\documentclass{article}
\usepackage{lmodern}
\DeclareMathSizes{7}{7}{5}{4} % \scriptsize is 7 pt
\DeclareMathSizes{5}{5}{3}{2} % \tiny is 5 pt
\begin{document}

\tracingmacros=2
{\tiny$(x_{i_1},y_{i_1})$} is in tiny font.

\noindent{\scriptsize$(x_{i_1},y_{i_1})$} is in scriptsize font.

\noindent$(x_{i_1},y_{i_1})$ is in normal font.
\end{document}

Don't overdo this, though: Tiny fonts can be really hard to read. There is a reason why the standard is \DeclareMathSizes{5}{5}{5}{5}. I.e., when \tiny is in effect (so the standard text font size is 5pt (assume 10pt in the main document) then all three math font sizes (text, script, scriptscript) will be 5pt. The thinking is probably that anything less than 5pt is unreadable.

Also, note my use of the lmodern package. The standard computer modern fonts don't have sizes that small, so the 5pt version is substituted even if you specify a smaller size.

Related Question