Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

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}
share|improve this question

1 Answer 1

up vote 14 down vote accepted

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.

share|improve this answer
1  
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

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.