[LaTeX] Une initiation à Beamer

latex 14 juil. 2013

 

Salut tout le monde,

Après de longues semaines sans temps libre pour écrire (et ça manquait !), je reprends les commandes d’Open-Freax pour de nouveaux articles et tutoriels ! De quoi vous occuper en cet été pourri…

Cette fois, on va voir ce qu’est la classe de document « beamer » de LaTeX, pourquoi ça dépote sévère, et surtout pourquoi vous allez rapidement désinstaller PowerPoint après la lecture de cette page.

 

Beamer, c’est quoi ?

C’est donc une classe LaTeX, spécialement conçue pour créer des présentations destinées à être vidéo-projetées. Mais pas que : à partir du document Beamer, il est possible de créer des transparents (pour impression sur transparents et utilisation avec un rétro-projecteur), et une version « standard » (article ou book, avec les notes, pour l’auditoire par exemple).

 

Et pourquoi l’utiliser ?

Pour tout un tas de raisons, et en voici une petite liste (du moins, les raisons pour lesquelles moi je l’utilise plus souvent que LibreOffice Impress !) :

  • on sort des présentations vivantes : on peut les animer, le sommaire et les liens fonctionnent out-of-the-box comme dans vos autres documents LaTeX…
  • les présentations sont portables : export au format PDF, c’est la garantie d’avoir la même chose à la maison que sur le poste utilisé pour projeter (aaah, les surprises de l’export de PowerCrap 2007 vers le « vieux » format 97-2003…)
  • il y a tout un tas de thèmes (modèles quoi) prédéfinis, personnalisables… et libre à vous d’en créer un ! On y reviendra plus tard 😉
  • on peut très simplement gérer les différentes versions/révisions d’une présentation
  • on peut structurer la présentation, tout comme les autres types de documents
  • la documentation officielle est franchement géniale, très complète, agrémentée d’exemples…
  • surtout, on reste fidèle à l’esprit de LaTeX ! WYSIWYM, tout ça…

 

Squelette « basique » d’une présentation

Un exemple de présentation créée avec Beamer, et un thème "maison"
Un exemple de présentation créée avec Beamer, et un thème « maison »

Préambule

Voici un court préambule commenté, afin que vous compreniez comment ça fonctionne :

1
2
3
4
\documentclass[ options ]{beamer}
\usetheme{theme
} % on choisit un thème à utiliser
% \usecolortheme{couleur} % et éventuellement un autre jeu de couleurs
% \usefonttheme{fonte} % ainsi que, pourquoi pas, d'autres fontes

Pour choisir votre thème, quelques possibilités :

 

On passe à la suite : les cadres !

Vous n’y échapperez pas, de toute façon. Une présentation Beamer, schématiquement, c’est une suite de cadres. L’équivalent des diapositives des logiciels « classiques » de présentation assistée par ordinateur comme LibreOffice Impress.

La syntaxe est des plus simple : le début du cadre est indiqué par un \begin{frame}, la fin de ce même cadre par un \end{frame}. \o/

Donnons maintenant à notre cadre un titre, et un sous-titre. Deux choix s’offrent à nous :

  1. Vous utilisez la structure des section, subsection…
  2. …ou pas, et vous voulez donner occasionnellement un titre à votre diapo.

Dans le cas 1 :

1
2
3
4
5
6
7
8
\section{Ma section}
\subsection{Une sous-section}

\begin{frame}
\frametitle{\insertsection}
\framesubtitle{\insertsubsection}
Du contenu
\end{frame
}

Et dans le cas 2, il suffit de mettre des \frametitle{Le titre de ma diapo} et \framesubtitle{Un sous-titre} après la balise d’ouverture du cadre. Simple, encore une fois !

Alors après, un cadre, c’est personnalisable à fond. Comme une page de texte, pour LaTeX, votre cadre est découpé en zones :

  • un en-tête et un pied de page ;
  • une marge gauche et une marge droite ;
  • des barres de navigation ;
  • des symboles de navigation ;
  • un emplacement pour un logo ;
  • un titre de cadre, ainsi qu’un sous-titre ;
  • un fond ;
  • une zone de contenu.

Et bien entendu, vous pouvez agir sur toutes ces zones, en modifier la taille, l’emplacement, la mise en forme… pour que ça colle à vos besoins. Et c’est pas nécessairement méchant. Par exemple, si vous voulez ajouter un logo à votre présentation, pas de prise de tête : un \logo{\includegraphics{fichier_image}}, et on n’en parle plus.

Idem avec les symboles de navigation. C’est bien pratique de les avoir parfois, en particulier si vous publiez votre présentation au format PDF, mais le jour de la présentation vidéo-projetée, c’est assez moche, surtout si comme moi vous utilisez une petite télécommande pour passer entre les diapos. Pour les masquer : \setbeamertemplate{navigation symbols}{}.

 

La table des matières

On passe à un autre élément important : la table des matières. Vous pouvez l’utiliser plusieurs fois, au début pour annoncer le plan, entre deux sections pour rappeler où vous en êtes… Voici les options qui vont bien à ajouter àa la commande de base \tableofcontents[options] :

  • currentsection (et currentsubsection) permet d’afficher la section (ou sous-section) en cours, en estompant légèrement les autres morceaux de la table des matières (en filigrane, si on veut) ;
  • hideothersubsections, comme son nom l’indique, masque les autres sous-sections autres que celle en cours ;
  • hideallsubsections, lui, masque toutes les sous-sections.

Le titre, maintenant !

Un exemple vaut mieux que de longs discours, là, je crois.

1
2
3
4
5
6
7
8
\title[ titre court ]{ titre }
\subtitle[ sous-titre court ]{ sous-titre }
\author[ auteur(s) court(s) ]{ auteur(s) }
\institut[ institut court ]{ institut }
\date[ date courte ]{ date }
\titlegraphic{\includegraphics{ fichier }}
\subject{ sujet }
\keywords{ mot(s) clé(s)
}

Quelques précisions et conventions, cependant : tout ne se fait pas comme de gros sales que nous sommes parfois. respectez ces quelques règles :

  • s’il y a plusieurs auteurs, séparez-les par \and et faites-les suivre de \inst{paramètre} ;
  • idem pour les instituts, s’il y en a plusieurs ;
  • \subject et \keywords sont des propriétés du document PDF qui sera généré, et seulement de ce document. Autrement dit, ça n’apparaît pas dans la présentation 😉

 

Les couches (overlays)

C’est DAT truc à comprendre pour bien utiliser Beamer. Un frame est en réalité constitué de plusieurs couches. Par exemple, si vous voulez faire apparaître les éléments d’une liste un à un, il suffit d’ajouter à la fin de chaque item la commande \pause. Dans le document PDF, et contrairement à PowerPoint qui ne génère qu’une page par diapo (même si une image apparaît par-dessus un texte, auquel cas vous ne voyez pas le texte, et vous vous mettez à pleurer), LaTeX générera une page par couche.

De la même façon, certaines commandes supportent la gestion des couches. Imaginez que dans ma diapo, on mette : « Windows, c’est pas bien. », et qu’on veuille que le mot « pas » apparaisse en gras lors du clic. Easy : dans le document, on mettra : Windows, c'est \textbf<2>{pas} bien.. Là, ça indique à LaTeX de mettre le mot « pas » en gras sur la couche 2, couche qu’il va créer si elle n’existe pas déjà. Et s’il y a une couche 3, « pas » ne sera plus en gras (bah oui, on lui a dit de le faire seulement sur la couche 2 !).

Du coup (avouez que c’est bien structuré, quand même), précisons ces histoires de numérotation de couches. Elles sont TOUJOURS entre < >, et on a le choix entre :

  • <1> : une seule couche concernée par la commande
  • <1,3,4> : la commande sera « active » sur les couches 1, 3 et 4, mais pas la 2
  • <1-4> : les couches 1 à 4 (inclus) sont concernées par la commande
  • <3-> : la commande s’applique à la couche 3 et toutes les couches suivantes du frame
  • <-2> : la commande s’applique du début du frame jusqu’à la couche 2 (incluse)
  • <-3,6,9-> : on combine le tout, et la commande s’applique aux couches 1 à 3, à la couche 6, et de la couche 9 à la dernière couche de la diapo

Cette puissance, n’empêche.

En vrac, quelques types de commandes qui acceptent la spécification de couches :

  • commandes sur les polices (gras, italique…)
  • énumération (\item, quoi)
  • changement de couleur (\color, \structure, \alert…)
  • des commandes et environnements spécifiques à la classe Beamer

Il y a aussi tout un tas de commandes pour dire ce qui peut être visible, invisible, etc. C’est assez complexe, et je ne m’en sers que très peu, aussi je ne me vois pas vous expliquer tout ça avant d’avoir approfondi 😉

 

Les blocs !

C’est LE truc utile 😉

J’exagère, mais l’idée y est. Vous pouvez créer des « boîtes » (colorées, ou non, avec des titres, ou pas, etc.). Ces boîtes supportent la spécification des couches ! \o/

Il y a 3 types de blocs :

  • block
  • alertblock
  • exampleblock

La syntaxe est la suivante :

1
2
3
\begin{ type de bloc }{ titre }
Contenu, liste, image... Ce qu'on veut ;-)
\end{ type de bloc
}

Un effet de mode

Jeu de mots moisi inside. Bref. Beamer possède plusieurs « modes » adaptés à ce que vous voulez en faire :

  • beamer, le mode de présentation par défaut
  • second, dans le cas où vous utilisez un deuxième écran pour la présentation
  • handout, pour une version « à plat » (pourquoi pas à imprimer), sans affichage incrémental du coup
  • trans, pour avoir de « vrais » transparents (rétroprojecteur powa)
  • article, pour avoir une version propre, papier… façon article, quoi
  • presentation, qui génère la totale, sans article

Ces modes se passent en option au documentclass, ou via la commande \mode{ mode(s) }{ contenu } qui ne fait apparaître un élément (le « contenu ») que dans le mode spécifié. Ça peut servir. Et si vous voulez que l’élément apparaisse dans plusieurs modes, ce sera par exemple \mode{beamer|handout}{ contenu }.

 

Voilà voilà. Avec ça, vous avez tout ce qu’il faut pour commencer à créer avec Beamer ! Et si vous avez besoin de précisions, n’hésitez pas. C’est un peu complexe au début, comme quand on se met à LaTeX. Mais sans rire, ça vaut le coup, le rendu est juste superbe. Bien plus propre/net/pro que sous PowerPoint. Régulièrement, on me demande ce que j’ai utilisé pour créer mon diapo, preuve que les gens « sentent » que c’est pas du made-in-crosoft alors que je précise rien du tout. :mrgreen:

Et dès que je croise des astuces par-ci par-là, je mets à jour cette page. Stay tuned !

Mots clés