# How to make proportional subscript when using smaller font in math mode?

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.

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

-

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.

-
I think you mean {S}{t}{s}{ss} in the first line. And it would be great if you could explain the effect of the standard {5}{5}{5}{5} in more detail. I'm sure not everyone knows of this. (It also took me some time to understand it.) But otherwise: Great answer. –  Hendrik Vogt Nov 27 '10 at 16:27
Thanks for pointing out the typo. And I added a bit of explanation. –  Harald Hanche-Olsen Nov 27 '10 at 18:37
+1, even better now. –  Hendrik Vogt Nov 28 '10 at 9:15
Additional info for others: If you use other font packages, they must be included after lmodern. Otherwise, lmodern will override. –  xport Nov 29 '10 at 16:42
My use of lmodern was only an example, anyhow. The important point is not to use lmodern; it is to use some font that supports the small sizes you want. –  Harald Hanche-Olsen Nov 29 '10 at 17:11