89

I am preparing a presentation and I have some slides with up to 15 equations. How can I make the font size of these slides smaller? I need to change the font size to 6.

4
  • 1
    Welcome to TeX.sx! How do you create the presentation? Beamer?
    – N.N.
    Nov 7 '11 at 15:13
  • Thanks!Yes, I use a beamer template: \documentclass[10pt]{beamer}
    – anna
    Nov 7 '11 at 15:20
  • 19
    I think you should not do this. Think about the 50 year old guy with the glasses somewhere at the audience. It's better to split a frame into two and to scroll forward and backward than to have all at one frame but nobody can read it. Nov 7 '11 at 15:25
  • 3
    @Schweinbacke I agree with you in general as 6pt is probably too small for a presentation, but sometimes 10pt is just a bit too large and it's better to squeeze that last line onto your slide rather than splitting it into two. Furthermore, it may be valuable to add an "equation reference" slide if the presentation is to be printed. Both of which require a technique to change the font size for the slide. Sep 2 '13 at 16:34
90

You can use \fontsize:

\fontsize{<font size>}{<value for \baselineskip>}\selectfont

For example,

\fontsize{6pt}{7.2}\selectfont

changes the font size to 6 points and the \baselineskip to 7.2 points. The latter being the gap between consecutive lines.

You can define a new command to apply the change:

\documentclass{beamer}
\usepackage{lipsum}

\newcommand\Fontvi{\fontsize{6}{7.2}\selectfont}

\begin{document}

\begin{frame}
\frametitle{Frame with reduced font size}
\Fontvi
\lipsum[1]
\end{frame}

\begin{frame}
\frametitle{Frame with regular font size}
\lipsum[1]
\end{frame}

\end{document}
4
  • 18
    This doesn't seem to affect things more than one level deep inside itemize lists...
    – naught101
    Nov 5 '12 at 5:12
  • How do we change also the size of itemize text?
    – aaragon
    May 7 '15 at 12:41
  • @naught101 is right --- it only changes the first level of itemized lists.
    – Wayne
    Sep 1 '16 at 16:26
  • not works for \begin{frame}[allowframebreaks] \frametitle{References} \fontsize{3}{6}\selectfont \printbibliography \end{frame}
    – alhelal
    Jan 6 '19 at 6:04
16

Since Gonzalo's answer does not work for nested itemizes, here is a solution redefining the beamer template which solves that.

To make it general I used the environ package, because the normal newenvironment has problems with seperating braces by the body.

\documentclass{beamer}
\usepackage{environ}

\usepackage{lipsum}


%
% Custom font for a frame.
%
\newcommand{\customframefont}[1]{
\setbeamertemplate{itemize/enumerate body begin}{#1}
\setbeamertemplate{itemize/enumerate subbody begin}{#1}
}

\NewEnviron{framefont}[1]{
\customframefont{#1} % for itemize/enumerate
{#1 % For the text outside itemize/enumerate
\BODY
}
\customframefont{\normalsize}
}

\begin{document}

    \begin{framefont}{\tiny}
        \begin{frame}
            \frametitle{Frame with reduced font size}
            \lipsum[66]
            \begin{itemize}
                \item Nunc sed pede. Praesent vitae lectus.
                \item Nunc sed pede. Praesent vitae lectus.
            \end{itemize}
        \end{frame}
    \end{framefont}

    \begin{frame}
        \frametitle{Frame with regular font size}
        \lipsum[66]
        \begin{itemize}
            \item Nunc sed pede. Praesent vitae lectus.
            \item Nunc sed pede. Praesent vitae lectus.
        \end{itemize}
    \end{frame}

\end{document}
2
  • Works great for me. Simple implementation, and extends to bullet items
    – Brett
    Dec 11 '17 at 18:37
  • Looks good, though it doesn't work with a fragile frame.
    – user4417
    Dec 11 '19 at 16:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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