Beamer
- Instalação
- Primeira apresentação
- Temas e cores
- Títulos
- Seções e subseções
- Outer theme e inner theme
- Fontes
- Alinhamento
- Barra de navegação
- Opções do frame
- Sumário
- Exibição condicional
- Blocos
- O comando alert
- Efeitos de transição
Beamer é uma classe de documentos de LaTeX criada para gerar apresentações em slides. É o mais popular no segmento de classes de documentos para apresentações em LaTeX. É uma alternativa ao Power Point para criar apresentações, com toda a flexibilidade e a consistência do LaTeX.
Instalação
Se você ainda não tiver o Beamer instalado e estiver usando o Ubuntu, você pode instalar o Beamer rodando o pacote abaixo:
sudo apt-get install latex-beamer
Se você estiver usando o Windows com o MikTeX, apenas instale os pacotes que forem solicitados ao tentar compilar um documento que use o Beamer.
Primeira apresentação
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[brazilian]{babel}
\usepackage{lmodern}
\begin{document}
\begin{frame} % cada frame é um slide
Primeiro frame
\end{frame}
\begin{frame}
Segundo frame
\end{frame}
\end{document}
A primeira coisa a fazer para criar uma apresentação no Beamer é definir a classe do documento como sendo beamer. As apresentações do Beamer são criadas com frames.
Um frame é um quadro que tem um conteúdo qualquer. Para criar um novo frame, pode-se usar o
comando \frame
passando o conteúdo dele como argumento ou usar o ambiente frame, que foi a
opção escolhida no exemplo.
No documento em PDF, você pode ver a apresentação apertando F5 para entrar no modo de apresentação do documento. Use as setas direcionais para navegar pelos frames. Aperte Esc para sair da apresentação.
Temas e cores
O Beamer contém vários temas. Temas modificam a aparência da sua apresentação. Você pode ver vários temas do Beamer aqui.
No link acima, cada linha representa um tema e cada grupo de duas colunas representa um esquema de cores. Você verá como alterar o tema e o esquema de cores do documento em breve.
Cada esquema de cor ocupa 2 colunas, e cada uma dessas colunas tem uma imagem que mostra a aparência do tema com aquele esquema de cor. Temas são muitas vezes nomes de cidades, e nomes de esquemas de cores são geralmente nomes de animais.
Para mudar o tema da apresentação, use o comando \usetheme
passando o nome do tema como argumento.
Para mudar o esquema de cores, use o comando \usecolortheme
passando o esquema de cores como
argumento. Exemplo:
\documentclass{beamer}
...
\usetheme{Bergen}
\usecolortheme{whale}
\begin{document}
...
\end{document}
O comando \setbeamercolor
pode ser usado para definir cores que o Beamer usa para alguns tipos de
elementos:
\setbeamercolor{normal text}{fg=blue}
Esse comando permite redefinir manualmente as cores que o Beamer usa para o nome do autor, a data e outras coisas.
Você passa o nome do elemento que você deseja mudar a cor e as cores do texto do elemento e / ou do fundo dele.
Essas cores são passadas em uma lista de opções no estilo chave=valor
.
A opção fg altera a cor do texto (fg é uma abreviação para foreground, que quer dizer primeiro plano em português) e a opção bg altera o fundo do texto. Caso mais de uma opção seja passada, as opções devem ser separadas por vírgulas:
\setbeamercolor{alerted text}{fg=green}
\setbeamercolor{block body}{bg=black, fg=white}
\setbeamercolor{block title}{fg=red}
Lembrando que você pode usar cores que você definir usando o comando \definecolor
.
\definecolor{laranja}{RGB}{255, 127, 0}
\setbeamercolor{block title}{fg=laranja}
Esse comando foi abordado na seção de Cores do tutorial de Formatação.
Títulos
Você pode definir um título e um subtítulo para o seu frame usando os comandos \frametitle
e
\framesubtitle
, respectivamente:
\begin{frame}
\frametitle{Título do frame}
\framesubtitle{Subtítulo do frame}
Primeiro frame
\end{frame}
Existe um comando que gera uma página de título baseado em algumas informações que você define no preâmbulo do
seu documento. Esse comando é o \titlepage
. No preâmbulo do seu documento, você pode definir
informações como título, autor e data da sua apresentação, para que elas sejam usadas nessa página de título.
Exemplo:
...
\title{Título da apresentação}
\author{Nome do autor}
\date{\today}
...
\begin{frame}
\titlepage
\end{frame}
...
Seções e subseções
Você pode utilizar seções e subseções para organizar a sua apresentação:
\section{Cereais}
\begin{frame}
\begin{itemize}
\item Arroz
\item Cevada
\item Ervilha
\item Feijão
\item Milho
\end{itemize}
\end{frame}
\subsection{Derivados da aveia}
\begin{frame}
\begin{itemize}
\item Mingau de aveia
\item Farelo de aveia
\item Farinha de aveia
\end{itemize}
\end{frame}
\subsection{Derivados do milho}
\begin{frame}
\begin{itemize}
\item Amido de milho
\item Canjica
\item Cuscuz
\item Fubá
\item Polenta
\end{itemize}
\end{frame}
\section{Frutas}
\begin{frame}
\begin{itemize}
\item Abacate
\item Maçã
\item Mamão
\item Melancia
\item Morango
\item Pera
\item Uva
\end{itemize}
\end{frame}
O exemplo acima tem quatro frames e duas seções, sendo que a primeira seção tem duas subseções. Note que o tema informa a qual seção ou subseção cada frame pertence na parte superior. Nem todo tema mostra esse tipo de informação. Por exemplo, o tema padrão do Beamer e alguns outros temas não mostram.
Organizar a sua apresentação em seções é uma ótima prática: te ajuda a dividir a sua apresentação por assuntos, deixando-a mais fácil de manter e compreender. Usar um tema que mostre as seções e subseções de cada frame é amigável para a sua audiência.
Outer theme e inner theme
Além de definir as cores dos elementos da sua apresentação, é possível fazer outras customizações. O comando
\useoutertheme
define um outer theme (tema externo) na sua apresentação que define o cabeçalho e a
linha do rodapé de cada slide. Basta passar o nome do outer theme como argumento:
\useoutertheme{infolines}
As opções são:
- infolines
- miniframes
- shadow
- smoothbar
- smoothtree
- split
- tree
O comando \useinnertheme
define um estilo que está mais relacionado ao conteúdo do slide em si
(tema interno).
\useinnertheme{rectangles}
As opções são:
- circles
- rectangles
- inmargin
- rounded
Dá para usar temas internos e externos ao mesmo tempo. É claro que se o tema que você usar definir estilos em um elemento que já foram definidos por um tema anterior, o estilo aplicado pelo tema anterior será sobrecarregado.
Esses temas internos e externos são usados pelos temas do Beamer.
Fontes
O comando \usefonttheme
define a fonte do tema:
\usefonttheme{structurebold}
As opções são:
- serif
- professionalfonts
- default
- structurebold
- structureitalicserif
- structuresmallcapsserif
Você também pode editar as fontes que o Beamer usa em diversos tipos de elementos. Para fazer isso, use o
comando \setbeamerfont
, passando o nome do elemento que você deseja alterar a fonte e os atributos
da fonte que você deseja alterar. Exemplo:
\setbeamerfont{alerted text}{size=\Large}
Outros elementos que podem ser alterados são o title e o block title, só para citar alguns. Outros
atributos da fonte também podem ser alterados usando uma lista no estilo chave=valor
com elementos
separados por vírgulas.
Um exemplo de atributo que poderia ser alterado nessa lista é o family. Ele altera a família da fonte. O exemplo abaixo muda a fonte para uma fonte com serifa e define o tamanho dele como Large:
\setbeamerfont{alerted text}{size=\Large, family=\rm}
Alinhamento
Para mudar o alinhamento vertical dos quadros do Beamer, basta passar um caractere de alinhamento ao ambiente do quadro que você quer mudar o alinhamento padrão:
\begin{frame}[b] % alinha o frame na parte inferior
\frametitle{Título do frame}
\framesubtitle{Subtítulo do frame}
Primeiro frame
\end{frame}
Note que o alinhamento do frame se aplica ao conteúdo dele, e não ao título nem ao subtítulo.
Também é possível alinhar na parte superior, usando o caractere t ou centralizar o quadro, usando o caractere c. Para mudar o alinhamento padrão de todos os frames, passe o caractere de alinhamento como argumento opcional da classe do documento:
\documentclass{beamer}[t]
Barra de navegação
As apresentações do Beamer tem uma barra de navegação. Você pode retirá-la usando o seguinte comando:
\beamertemplatenavigationsymbolsempty
Opções do frame
O comando \frame
e o ambiente frame aceitam algumas opções interessantes. Algumas delas
serão abordadas aqui. A primeira opção é a plain. Ela é útil quando você quer retirar os demais elementos
do slide: cabeçalho, rodapé e sidebar, e deixar só o conteúdo do slide que você colocar. Exemplo:
\begin{frame}[plain]
\includegraphics[scale=0.5]{natureza.png}
\end{frame}
Outra opção é a shrink. Ela é útil quando você tem um texto muito grande para caber num slide, mas que se fosse um pouco menor caberia no slide. Usando a opção shrink, o LaTeX usa algumas técnicas para fazer com que o seu texto caiba em um único slide.
Compile o documento abaixo:
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[brazilian]{babel}
\usepackage{lipsum}
\begin{document}
\begin{frame}
\lipsum[1-2]
\end{frame}
\begin{frame}[shrink]
\lipsum[1-2]
\end{frame}
\end{document}
A imagem abaixo mostra o primeiro frame:
A imagem abaixo mostra o segundo frame:
Os dois frames tem o mesmo conteúdo. A diferença é que o segundo usa a opção shrink. Note que o primeiro frame teve uma parte do conteúdo "cortada", ou seja, ele não exibiu o conteúdo de forma integral. No segundo frame, por conta do uso da opção shrink, a fonte do texto do frame foi reduzida para caber no frame.
A terceira opção é a allowframebreaks, que permite que novos frames sejam criados automaticamente quando o conteúdo que você quer colocar no seu frame for grande demais para ser exibido em um único frame. Exemplo:
\begin{frame}[allowframebreaks]
\lipsum[1-2]
\end{frame}
A quarta opção é a opção fragile. Ela é usada quando você quer usar algum ambiente verbatim no seu
frame. Pode ser útil, por exemplo, se você for programador, e quiser colocar algum código em algum frame. Para
usar o ambiente fragile, o comando \end{frame}
precisa estar no início da linha.
\begin{frame}[fragile]
\begin{verbatim}
Abc \Teste
\end{verbatim}
\end{frame}
Sem o fragile, o documento não compila.
Sumário
Assim como em um livro ou artigo, você também pode colocar um Sumário em uma apresentação do LaTeX. Basta usar o
comando \tableofcontents
, da mesma forma que já foi feito no tutorial do
Sumário:
\begin{frame}
\frametitle{Sumário}
\tableofcontents
\end{frame}
Você também pode colocar o Sumário sempre que uma seção ou subseção for começada. Para exibir o Sumário sempre
que uma seção for criada, basta usar o comando \AtBeginSection
, dessa forma:
\AtBeginSection[]{
\begin{frame}
\frametitle{Sumário}
\tableofcontents
\end{frame}
}
Para ficar mais amigável para o seu público, passe o argumento currentsection ao comando
\tableofcontents
:
\tableofcontents[currentsection]
Para fazer o mesmo a cada subseção, passe o currentsection e o currentsubsection e use o comando
\AtBeginSubsection
:
\AtBeginSubSection[]{
\begin{frame}
\frametitle{Sumário}
\tableofcontents[currentsection, currentsubsection]
\end{frame}
}
Exibição condicional
É muito comum ver apresentações onde o conteúdo de um frame aparece gradualmente. Isso pode ser feito no Beamer
de várias formas. Uma delas é usando o comando \pause
. Esse comando faz com que o que estiver
depois dele seja exibido apenas depois que você aperta a tecla da seta para baixo ou espaço ou alguma outra
coisa que depende do programa que você está usando para visualizar a sua apresentação, mas geralmente um desses
dois vai funcionar. Exemplo:
\begin{frame}
Texto exibido logo no início
\pause
Texto escondido no início
\pause
Texto exibido após o anterior
\end{frame}
A cada vez que o \pause
é usado, um novo slide é criado.
Essas animações são muito interessantes, principalmente quando usadas em ambientes de itens, como
\itemize
ou \enumerate
. Neles, é possível especificar quando um item vai aparecer e
quando ele vai desaparecer:
\begin{frame}
\begin{enumerate}
\item<1-2> Esse item é mostrado no 1º e no 2º slide;
\item<2-2> Esse item só é mostrado no 2º slide;
\item<3-> Esse item é mostrado do 3º slide em diante;
\item<4> Esse item é mostrado apenas no 4º slide.
\end{enumerate}
\end{frame}
Se o seu objetivo é revelar um item por slide, passe o argumento abaixo para o ambiente de itens:
\begin{enumerate}[<+->]
\item Esse item é revelado no 1º slide;
\item Esse item é revelado no 2º slide;
\item Esse item é revelado no 3º slide;
\end{enumerate}
Há também outros comandos para lidar com os slides de um frame que serão mostrados: \uncover
,
\only
e \visible
. Primeiramente, veja como o \uncover
funciona:
\begin{frame}
\uncover<2->{aparece a partir do 2º slide\\}
\uncover<3-4>{aparece no 3º e no 4º slide\\}
\uncover<4>{aparece no 4º slide\\}
\uncover<3->{aparece a partir do 3º slide\\}
\end{frame}
Veja que foram especificados os slides que se deseja descobrir da mesma forma que foi feito com os itens da
lista. O \uncover
é mais genérico. Ele tem um argumento que é o conteúdo que se quer cobrir ou
descobrir.
A forma que o Beamer usa para cobrir os slides é torná-los invisíveis. Isso pode ser alterado:
\setbeamercovered{transparent}
Com esse comando, os slides que estão cobertos ficam transparentes. Em qualquer uma das formas, o Beamer sempre
guarda espaço para os slides cobertos usando esse comando \uncover
. Agora, substitua o comando
\uncover
pelo \visible
no último frame:
\begin{frame}
\visible<2->{aparece a partir do 2º slide\\}
\visible<3-4>{aparece no 3º e no 4º slide\\}
\visible<4>{aparece no 4º slide\\}
\visible<3->{aparece a partir do 3º slide\\}
\end{frame}
A única diferença entre o \uncover
e o \visible
é que esse último torna os slides
cobertos invisíveis mesmo com o comando \setbeamercovered{transparent}
.
Há também o comando \only
:
\begin{frame}
\only<2->{aparece a partir do 2º slide\\}
\only<3-4>{aparece no 3º e no 4º slide\\}
\only<4>{aparece no 4º slide\\}
\only<3->{aparece a partir do 3º slide\\}
\end{frame}
Esse comando atua quase da mesma forma que o \visible
. A diferença é que ele não guarda espaço para
os slides cobertos, como o \uncover
e o \visible
fazem.
Blocos
Blocos servem para separar conteúdos diferentes dentro de um slide. Um bloco é um ambiente, que recebe o seu título como argumento. O conteúdo do bloco é o que fica dentro do ambiente:
\begin{frame}
\begin{block}{Cereais}
\begin{itemize}
\item Arroz
\item Cevada
\item Ervilha
\end{itemize}
\end{block}
\begin{block}{Frutas}
\begin{itemize}
\item Abacate
\item Maçã
\item Mamão
\item Melancia
\item Morango
\end{itemize}
\end{block}
\end{frame}
O comando alert
Também é possível usar o comando \alert
para destacar os itens conforme eles forem aparecendo. Esse
comando segue a mesma lógica do destaque dos itens de uma lista:
\begin{frame}
\begin{enumerate}
\item<1> \alert<1>{Item aparece e é destacado apenas no 1º slide}
\item<2-> \alert<2>{Item aparece a partir do 2º slide e é destacado
apenas nele}
\item<3-> \alert<3->{Item aparece e é destacado a partir do 3º slide}
\item<4> \alert<4>{Item aparece e é destacado apenas no 4º slide}
\end{enumerate}
\end{frame}
Efeitos de transição
É muito comum que apresentações tenham efeitos de transição entre um slide e outro. Para usar efeitos de transição, basta colocar o comando relacionado ao efeito no início do frame:
\begin{frame}
\transblindshorizontal
\lipsum[1]
\end{frame}
Além do efeito \transblindshorizontal
que foi usado no exemplo, há outros efeitos de transição que
podem ser aplicados em um frame, tais como o \transblindsvertical
e o \transdissolve
.
A tabela abaixo fala sobre esses efeitos:
Efeito | Descrição |
---|---|
\transblindsvertical |
Revela o slide da esquerda para a direita. |
\transblindshorizontal |
Revela o slide de cima para baixo. |
\transdissolve |
Dissolve lentamente o slide anterior, enquanto mostra gradualmente o novo slide. |