Continuing my previous post, let’s answer another of my friend’s questions on beamer
. This time, he’d like to change the layout of theorem headings. (Notice that theorem bodies are easier to customize, since beamer uses amsthm
and its concept of theorem styles internally—see documentation of amsthm
for information on how to use or define theorem styles.)
It turns out that beamer
has a nice hook enabling users defining their own layout of theorem headings. Let us look into a simple example:
\documentclass{beamer} \makeatletter \setbeamertemplate{theorem begin} {% \begin{\inserttheoremblockenv} {% \inserttheoremheadfont \inserttheoremname \inserttheoremnumber \ifx\inserttheoremaddition\@empty \else : \textmd{\textit{\inserttheoremaddition}} \fi \inserttheorempunctuation }% } \setbeamertemplate{theorem end}{\end{\inserttheoremblockenv}} \makeatother \begin{document} \begin{frame} \begin{theorem}[An example of beamer tricks] This is a theorem. \end{theorem} \end{frame} \end{document}
Notice how \makeatletter
is needed here for the internal LaTeX command \@empty
to work. Also notice that Computer Modern Sans Serif fonts do not contain bold italic (!), so \textmd
is also necessary. Finally, notice the percentage signs effectively cancelling the newlines, which otherwise might get converted into spaces; in this case they most probably won’t be needed (well, to be sure one would have to read the beamer source), but they should never hurt (well, except some really strange cases; for instance, each numerical constant given to TeX’s low-level commands should be terminated by a space).
So, happy TeXing (or beamering?)!
CategoryTeX, KategoriaTeX, KategoriaLaTeX, KategoriaLaTeXPorady