Temas do Beamer

Faz um bom tempo já que eu faço slides usando latex, mais especificamente o pacote Beamer. Há vários temas que se pode escolher, como por exemplo Boadilla, Copenhagen, Cambridge, Darmstadt, etc. Sim, os nomes dos temas em geral são nomes de cidades.

Eu sempre usava algum desses temas sem nenhuma customização. Entretanto, algumas vezes eu queria combinar características de temas diferentes, mas acabava me conformando em usar apenas a de um tema.

Em meados de 2010 o Peterson fez um tema customizado, que acabamos adotando informalmente como o do laboratório, tanto que eu o usei nas duas apresentações que fiz nos seminários do LOCo.

Componentes de um tema

Na verdade um tema é composto por diversas partes: cor, tema externo, tema interno e fonte. Há vários desses temas pré-definidos no sistema, com nomes não muito sugestivos.

color — albatross, beaver, beetle, crane, default, dolphin, dove, fly, lily, orchid, rose, seagull, seahorse, sidebartab, structure, whale, wolverine;

outer — default, infolines, iniframes, shadow, sidebar, smoothbars, smoothtree, split, tree;

inner — circles, default, inmargin, rectangles, rounded;

font — default, professionalfonts, serif, structurebold, structureitalicserif, structuresmallcapsserif.

Como primeiro exemplo, vamos usar a seguinte combinação:

\usecolortheme{wolverine}
\useinnertheme{circles}
\useoutertheme{infolines}
\usefonttheme{default}

Código 1: Temas

Usando esse código latex de exemplo, a saída será:


Figura 1: Capa usando temas do Código 1


Figura 2: Texto usando temas do Código 1

Agora, usando uma nova combinação

\usecolortheme{albatross}
\useinnertheme{rectangles}
\useoutertheme{sidebar}
\usefonttheme{structurebold}

Código 2: Temas


Figura 3: Capa usando temas do Código 2


Figura 4: Texto usando temas do Código 2

Criando seu próprio tema

Segundo o manual (pdf), esses componentes de tema são apenas para uma melhor modularização, de modo que você pode definir tudo no próprio .tex em que estiver trabalhando.

Porém, se quiser manter a organização, e quiser criar um tema com nome xyz para as componentes color, inner, outer e font, deve editar um arquivo com nome beamercolorthemexyz.sty, beamerinnerthemexyz.sty, beamerouterthemexyz.sty ou beamerfontthemexyz.sty, respectivamente.

Tema de cores

O tema de cores, como o nome diz, contém as definições de cores das estruturas usadas pelos temas. Se quisermos que o tema de cores possa ser combinado com qualquer um dos outros temas, a sugestão é pegar o código de algum outro tema e editar as cores da maneira desejada. Desta forma, estaremos cobrindo todas as possíveis estruturas.

Tema interno

O tema interno controla diversos elementos como: página de título, o ambiente itemize, o ambiente enumerate, os blocos, figuras e tabelas, etc. Para escolher cada o estilo de cada item, usamos o comando \setbeamertemplate{nome do item}[valor]

Alguns exemplos:

\setbeamertemplate{blocks}[rounded][shadow=true]
\setbeamertemplate{items}[circle]
\setbeamertemplate{enumerate item}[square]

O exemplo é auto-explicativo, e é basicamente o que usei na adaptação do tema do Peterson.

Tema externo

O tema externo define como será o topo e a base da página, ou seja, a estrutura externa da mesma. O melhor é criar seu tema a partir de um pré-existente que mais se assemelha à estrutura desejada.

No exemplo abaixo, o trecho do tema infolines que define a parte inferior da página (footline):

\defbeamertemplate*{footline}{infolines theme}
{
  \leavevmode%
  \hbox{%

  \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}%
    \usebeamerfont{author in head/foot}\insertshortauthor~~(\insertshortinstitute)
  \end{beamercolorbox}%

  \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
    \usebeamerfont{title in head/foot}\insertshorttitle
  \end{beamercolorbox}%

  \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,right]{date in head/foot}%
    \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em}
    \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} 
  \end{beamercolorbox}}%
  \vskip0pt%
}

O código acima está definindo três blocos de mesmo tamanho (controlado por wd – width), conforme pode ser conferido na Figura 2. Além disso, no primeiro bloco será inserido o nome encurtado do autor e do instituto, definidos pelas macros \insertshortauthor e \insertshortinstitute.

Dá para modificar essa parte do jeito que for mais conveniente. Por exemplo, se não quisermos que apareça o nome do autor/instituto pois é um seminário onde todos te conhecem, podemos usar apenas dois blocos e ajeitar a largura para wd=.5\paperwidth.

Como a contagem de páginas geralmente ocupa menos espaço e o nome do trabalho ocupa mais, eu modifiquei o tema acima para ficar com as proporções 3/6/1, sacrificando simetria por legibilidade.

Customizando as cores, as estruturas internas e externas, adaptei o tema do Peterson, que ficou com a seguinte cara:

Figura 5: Capa usando tema do LOCo modificado

Figura 6: Texto usando tema do LOCo modificado

Extra: Coloração das linhas de tabelas

Embora tabelas devam ser customizadas no tema interno, até onde eu sei essa em particular não pode ser inserida como parte do Beamer. Dado exemplo de tabela (código):

Queremos que as linhas alternem suas cores. Para fazer isso, podemos usar o comando \rowcolors{l}{cor1}{cor2}, onde l é deve conter o númnero da linha onde a coloração irá começar, cor1 e cor2 são as cores que serão alternadas.

Esse comando é bugado para tabelas com multi-colunas como no exemplo acima. Para isso é preciso acertar manualmente a cor da coluna com o comando \columncolor{cor}. O novo código pode ser conferido aqui.

O resultado fica então:

Referências

[1] Beamer User Guide (pdf)
[2] http://www.tug.org/pracjourn/2005-4/mertz/mertz.pdf

4 respostas a Temas do Beamer

  1. Rosane diz:

    gostaria do código usado para apresentação na figura 5, será q é possível mandar por email?

  2. Rosane diz:

    Muito obrigada!!!!

  3. Victor diz:

    Aqui tem algumas coisas legais sobre temas do Beamer e customização destes, não sei se já conhece: http://www.math.umbc.edu/~rouben/beamer/quickstart-Z-H-7.html#node_sec_7. Inclusive fala, no cap. 25, como acrescentar variações de cores “exclusivas” do latex ao beamer…
    Espero ter acrescentado algo.

%d bloggers like this: