Beamer: Divide Frame into Columns

In a Beamer frame, you might need to present 2 or more figures or a figure and textual content beside each other. The columns environment of Beamer can be used to achieve this by subdividing the frame into columns.

To do this enclose all the frame content within a columns environment:

\begin{frame}{Fixing an Optical Mouse}
\begin{columns}
% Frame content here
\end{columns}
\end{frame}

To create a column of content inside this environment of say, 0.6 width of the total frame width use:

\column{0.6\textwidth}
% Content of this column here

The content of this column follows after this. Do this for each column you want. The widths of all the columns should add up to 1.0.

The frame shown above has 2 columns, of width 0.6 and 0.4 respectively, holding a figure and some text. It was generated from this snippet of LaTeX code:

\begin{frame}{Fixing an Optical Mouse}
\begin{columns}
	\column{0.6\textwidth}
	\includegraphics[scale=0.3]{mouse.png}

	\column{0.4\textwidth}
	\begin{itemize}
	\item{Open mouse.}
	\item{Fix internals of mouse.}
	\item{Close mouse.}
	\end{itemize}
\end{columns}
\end{frame}

Beamer: Creating a Handout

Having image animations and itemized list transitions in a presentation generated using Beamer looks great! But, printing out these animations and transitions on paper is wasteful and redundant. To discard these transitions while creating a PDF for printing as handouts, specify the handout option to Beamer in the preamble:

\documentclass[handout]{beamer}

Beamer: Image Animation

Beamer makes it very easy to include a series of images and display them in a serial animated style in separate frames (slides).

For example, to display the images foobar-0.png, foobar-1.png and foobar-2.png in a serial fashion use:

\usepackage{xmpmulti}
\begin{frame}
\multiinclude[format=png]{foobar}
\end{frame}

xmpmulti is a package that ships along with the Beamer package. \multiinclude is the command that takes care of putting the foobar-x.png into different frames. Make sure that the files are named as basename-number.format, i.e., the basename and the number are separated by a hyphen. The format option is the extension of the files.

\multiinclude starts from file number 0. To start from a different number, say 9:

\multiinclude[format=png,start=9]{foobar}

\multiinclude inserts all files that are in the above format. To make it stop at a certain number, say 7:

\multiinclude[format=png,end=7]{foobar}

Typically, images are inserted using the \includegraphics command. The settings passed to \includegraphics can be passed to \multiinclude using its graphics option. For example, to set the scale of the image to 0.3:

\multiinclude[format=png,graphics={scale=0.3}]{foobar}

By default, the images are placed one on top of another. To replace each image by the next image try:

\multiinclude[<+>][format=png]{foobar}

Beamer: Fonts

If you are not satisfied with the font themes that ship with Beamer, you can use any font family you want for your Beamer document. The font family you intend to use has to be available as a package. For example, to use the Helvetica font family include:

\usepackage{helvet}

The font theme has to match the style of the font family, else the resulting document may have a mix of fonts used in it. That is, use the serif font theme for a serif font family and so on. For example, to use the Concrete Math font family (which is serif):

\usefonttheme{serif}     % Font theme: serif
\usepackage{ccfonts}     % Font family: Concrete Math
\usepackage[T1]{fontenc} % Font encoding: T1

Sometimes, a font encoding may also have to be specified for the font family. For example, the T1 font encoding for Concrete Math font family in the example above.

Beamer: Font Themes

A Beamer font theme represents the style of the font used in the document. Beamer comes with the following predefined font themes:

  • default (This is sans serif.)
  • professionalfonts
  • serif
  • structurebold
  • structureitalicserif
  • strucutresmallcapsserif

To set the font theme for a Beamer document use the \usefonttheme command in the preamble of the document.

For example to set the font to serif:

\usefonttheme{structurebold}

Beamer: Installing Custom Themes

Beamer comes installed with many themes and color themes. But, there are many custom themes out there you might be interested to use. A good list of such custom themes is maintained by Rogier Koppejan here.

To install a custom Beamer theme:

  1. Copy the .sty files of the theme to the respective subdirectories under the $(MIKTEX_ROOT)\tex\latex\beamer\base\themes\ directory. For example, beamerthemeTorino.sty goes into the theme subdirectory, beamercolorthemechameleon.sty goes into the color subdirectory and so on.
  2. Refresh the MikTeX file name database. You may need to close all applications that use LaTeX for this operation to complete successfully.