[Tex/LaTex] Designing a beamer theme from scratch : what to put in inner/outer/color

beamer

I am trying to impement a beamer theme from my institution's powerpoint theme.
I have started from Design a custom Beamer theme from scratch, but I have some issues.

First is I do not understand what is the logic behind the different files : in addition to outer inner color, I have also seen a font file.
So I do not understant what is supposed to go where, and perhaps more importantly, how they interact with each other.

Best Answer

Beamer Theme Matrix can help you to understand how it works. It shows how different color themes change every main theme. If the whole theme (inner, outer, font, color) was defined inside a unique file, you should modify this file. Being everything divided in independent fragments, just selecting a combination of them provides a new aspect for your presentation.

Section 15.1 Five Flavour Themes in beameruserguide clearly explain differences between them. It's easy to imagin what color and font themes do. inner themes define how elements inside a slide (items, enumerate, blocks, ...) look while outer themes define headlines, footlines, sidebar, ...

In fact, all main themes are defined as a combination of inner, outer, font and color themes. Just two examples, AnnArbor theme is defined with

\useinnertheme[shadow=true]{rounded}
\useoutertheme{infolines}
\usecolortheme{wolverine}

\setbeamerfont{block title}{size={}}
\setbeamercolor{titlelike}{parent=structure,bg=yellow!85!orange}

while Copenhagen is

\useoutertheme{split}
\useinnertheme{rounded}

\usecolortheme{whale}
\usecolortheme{orchid}

\setbeamerfont{block title}{size={}}

Although beamer works this way, you don't have to follow it. If you want a constant theme, with very few options, everything can be defined inside a main theme file. If your theme is called "mytheme", define everything inside a file called beamerthememytheme.sty file and store it into your working folder while you are testing it. As soon as your theme is ready, move it to your local tree.