20653ddee5
Last-change: ignore this commit
365 lines
12 KiB
XML
365 lines
12 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||
<!DOCTYPE html
|
||
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
|
||
"tuteurs://DTD/tml.dtd">
|
||
<html>
|
||
<head>
|
||
<title>Présentations</title>
|
||
</head>
|
||
<body>
|
||
|
||
<h1>Faire des présentations en LaTeX avec beamer</h1>
|
||
|
||
<h2>Introduction</h2>
|
||
|
||
<h3>Pourquoi faire une présentation en LaTeX plutôt qu'avec Powerpoint?</h3>
|
||
|
||
<p>
|
||
Les arguments sont essentiellement les mêmes que pour LaTeX vs Word. En
|
||
faveur de latex, entre autres, la rigueur du rendu, la programmabilité,
|
||
la portabilité, la possibilité d'entrer des formules (combien de gens
|
||
voit-on convertir en images des formules tapées en TeX, pour les inclure
|
||
dans du powerpoint...), sont tout aussi utiles pour une présentation que
|
||
pour un rapport. D'un autre côté, le fait que la préparation du document
|
||
n'est pas faite de manière visuelle est sans doute plus génante pour des
|
||
transparents, mais pas tant que ça en fait. Enfin, Powerpoint propose
|
||
tout plein d'effets graphiques (animations...), domaine dans lequel les
|
||
packages LaTeX sont un peu plus pauvres (mais certainement pas indigents,
|
||
et suffisants pour la plupart des usages).
|
||
</p>
|
||
|
||
<h3>Les packages LaTeX pour faire des présentations</h3>
|
||
<p>
|
||
Historiquement, il y avait les classes <kbd>slides</kbd>, et
|
||
<kbd>seminar</kbd> qui sont beaucoup trop basiques. Ensuite sont apparus
|
||
<kbd>pdfscreen</kbd> et <kbd>prosper</kbd>, qui sont beaucoup plus
|
||
évolués. Enfin est venu <kbd>beamer</kbd>, qui est nettement le meilleur
|
||
choix à l'heure actuelle. C'est de lui que traitera le reste de
|
||
l'article. Mentionnons enfin <a
|
||
href="http://pauillac.inria.fr/advi">advi</a>, qui est un viewer de dvi
|
||
avec plein de fonctions graphiques grassouilles (par exemple, on peut
|
||
faire se balader du texte sur la page). Il présente l'inconvénient de ne
|
||
tourner que sous unix, et de ne pas être bien standard (en général, on
|
||
doit se l'installer à la main).
|
||
</p>
|
||
|
||
<h3>Beamer</h3>
|
||
<p>
|
||
Beamer est donc un package LaTeX prévu pour faire des présentations. Il
|
||
est conçu pour produire du pdf. Pour ce faire, on compile le fichier
|
||
<kbd>.tex</kbd> en utilisant <kbd>pdflatex</kbd> au lieu de
|
||
<kbd>latex</kbd>. Le pdf obtenu peut alors être visualisé avec n'importe
|
||
quel afficheur de pdf, comme Acrobat Reader.
|
||
</p>
|
||
|
||
<p>
|
||
Beamer vient avec une documentation très étoffée, accessible <a
|
||
href="../../noncvs/docs/beamer">ici</a>. Beamer possède également deux
|
||
sous-packages :
|
||
</p>
|
||
<dl>
|
||
<dt>pgf</dt>
|
||
<dd>
|
||
package permettant plein de grassouillitudes graphiques. Il
|
||
réimplémente une partie de pstricks (cela le rend intéressant en
|
||
lui-même, puisque pstricks ne marche pas avec pdflatex). On vera ici un
|
||
exemple d'utilisation de pgf pour inclure des images. <a
|
||
href="../../noncvs/docs/pgf">Documentation de pgf.</a>
|
||
</dd>
|
||
<dt>xcolor</dt>
|
||
<dd>
|
||
package permettant de définir des couleurs, de manière très
|
||
sophistiquée : mélange de couleurs, différents modèles de couleurs,
|
||
... <a
|
||
href="../../noncvs/docs/xcolor">Documentation de xcolor.</a>
|
||
</dd>
|
||
</dl>
|
||
|
||
<p>
|
||
Comme ils sont assez technique, et pas indispensable à maitriser pour une
|
||
utilisation simple de beamer, on ne les décrira pas plus avant ici, on
|
||
renvoie à leur documentation.
|
||
</p>
|
||
|
||
<p>
|
||
Beamer est installé sur les machines de l'École, et est inclus dans de
|
||
plus en plus de distributions de TeX. Si néanmoins vous ne l'avez pas sur
|
||
la votre, vous pouvez le télécharger <a
|
||
href="http://sourceforge.net/projects/latex-beamer">ici</a>, il faut y
|
||
récupérer les versions les plus récentes de <kbd>latex-beamer</kbd>,
|
||
<kbd>pgf</kbd> et <kbd>xcolor</kbd>.
|
||
</p>
|
||
|
||
<h2>Un exemple de base</h2>
|
||
|
||
<h3>Le .tex</h3>
|
||
|
||
<p>
|
||
Soit le fichier <kbd>b.tex</kbd> suivant :
|
||
</p>
|
||
|
||
<pre>
|
||
\documentclass{beamer}
|
||
\usepackage[latin1]{inputenc}
|
||
\usetheme{Warsaw}
|
||
|
||
\title{Hello World!}
|
||
\author{B. Meuhr}\institute{École Normale Supérieure, département de pipologie}
|
||
|
||
\begin{document}
|
||
|
||
\begin{frame}
|
||
\titlepage
|
||
\end{frame}
|
||
|
||
\begin{frame}
|
||
\textsc{Beamer}, c'est vachement tout beau!
|
||
\end{frame}
|
||
|
||
\begin{frame}
|
||
Et c'est facile.
|
||
\end{frame}
|
||
|
||
\end{document}
|
||
</pre>
|
||
|
||
<p>
|
||
On le compile avec la commande <kbd>pdflatex b.tex</kbd>, et l'on obtient
|
||
alors un joli fichier <kbd>b.pdf</kbd>, que l'on peut afficher avec Acrobat
|
||
Reader (on a intéret à passer en mode plein écran, pour ce faire, taper
|
||
<kbd>control L</kbd>).
|
||
</p>
|
||
|
||
<h3>Les points clefs</h3>
|
||
|
||
<p>
|
||
On commence par :
|
||
</p>
|
||
|
||
<pre>
|
||
\documentclass{beamer}
|
||
</pre>
|
||
<p class="continue">
|
||
ce qui charge beamer, et effectue les réglages de bases.
|
||
</p>
|
||
|
||
<p>
|
||
Ensuite, beamer étant très versatile, il faut le régler à son
|
||
gout. Souvent, on se contente de charger un thème préféfini, qui se
|
||
charge de définir l'apparence graphique de tous les éléments. Ici, on
|
||
utilise le thème « Warsaw » (il y en a beaucoup d'autres, ils sont
|
||
décrits dans le manuel de Beamer) :
|
||
</p>
|
||
|
||
<pre>
|
||
\usetheme{Warsaw}
|
||
</pre>
|
||
|
||
<p>
|
||
Une fois à l'intérieur du <kbd>\begin{document}</kbd>, on entre le texte
|
||
de la présentation. On doit diviser à la main son texte en pages (pour que
|
||
la présentation soit compréhensible, il important de faire la division
|
||
intelligement), et mettre chaque page dans un environnement
|
||
<kbd>frame</kbd>.
|
||
</p>
|
||
|
||
<h2>Fonctionalités plus avancées</h2>
|
||
|
||
<h3>Sectionnement</h3>
|
||
|
||
<p>
|
||
On peut (et c'est même recommandé) insérer des <kbd>\section</kbd>,
|
||
<kbd>\subsection</kbd> et cie. Certains thèmes (par exemple le
|
||
<kbd>Warsaw</kbd> utilisé ci-dessus) affichent un condensé de la table
|
||
des matières dans un panneau, ce qui, à l'affichage, permet de naviguer
|
||
facilement à travers le document en cliquant.
|
||
</p>
|
||
|
||
<h3>Animations</h3>
|
||
|
||
<p>
|
||
Beamer permet de définir des séquences de slides différant seulement par
|
||
des apparitions ou disparitions (ou mise en grisé) de morceaux de
|
||
texte. Par exemple, ce code :
|
||
</p>
|
||
|
||
<pre>
|
||
\begin{frame}
|
||
\begin{itemize}
|
||
\item<13> Ploum!
|
||
\item<2-4> Plim?
|
||
\item Plum...
|
||
\end{itemize}
|
||
\end{frame}
|
||
</pre>
|
||
|
||
<p class="continue">
|
||
va produire une séquence de 4 slides. Toutes les 4 auront un « Plum... »
|
||
sur la troisième ligne. La première ligne contiendra un « Ploum! » sur la
|
||
première et la troisième slide, tandis qu'elle sera vide sur la deuxième
|
||
et la quatrième. La deuxième ligne, elle, sera vide sur la première
|
||
slide, et contiendra « Plim? » sur les suivantes.
|
||
</p>
|
||
|
||
<p>
|
||
Comme le montre cet exemple, un certain nombre de commandes ont été
|
||
modifiées pour prendre un argument optionel entre <kbd><></kbd>. Dans cet
|
||
argument on peut mettre un nombre, un intervalle (deux nombres séparés
|
||
par un <kbd>-</kbd>), ou plusieurs nombres ou intervaux séparés par des
|
||
virgules. Ces nombres spécifient sur quelles slides de la séquence qui va
|
||
être créée la commande doit « avoir un effet ». Pour <kbd>\item</kbd>,
|
||
cela veut dire afficher la bille et le texte qui en dépend. Mais pour les
|
||
commandes de changement de police ou de couleur, cela veut dire que le
|
||
changement ne doit être effectué que sur les slides en question. Par
|
||
exemple, un :
|
||
</p>
|
||
|
||
<pre>
|
||
\textbf<2>{ploum}
|
||
</pre>
|
||
|
||
<p class="continue">
|
||
aura pour effet de mettre « ploum » en gras sur la deuxième slide, et en
|
||
normal sur la première.
|
||
</p>
|
||
|
||
<p>
|
||
L'argument optionel entre <kbd><></kbd> n'est pas un effet magique : les
|
||
auteurs de Beamer ont du modifier toutes les commandes ... qu'ils ont
|
||
modifiées. Pour les autres, il faut se débrouiller à la main. On dispose
|
||
des commandes <kbd>\only</kbd> et <kbd>\uncover</kbd> qui prennent un
|
||
argument entre <kbd><></kbd>, puis un argument normal entre
|
||
<kbd>{}</kbd>, qu'elles n'affichent que sur les slides spécifiées. La
|
||
différence entre les deux est qu'avec <kbd>only</kbd>, le texte est jeté,
|
||
tandis qu'avec <kbd>uncover</kbd>, il occupe sa place mais est
|
||
transparent. Par exemple, avec :
|
||
</p>
|
||
|
||
<pre>
|
||
pif \uncover<2>{paf} Abcd-Efgh \only<1>{Ijklmn} ouais!
|
||
</pre>
|
||
|
||
<p class="continue">
|
||
on obtiendra :
|
||
</p>
|
||
|
||
<pre>
|
||
pif Abcd-Efgh Ijklmn ouais!
|
||
</pre>
|
||
|
||
<p class="continue">
|
||
sur la première slide, et :
|
||
</p>
|
||
|
||
<pre>
|
||
pif paf Abcd-Efgh ouais!
|
||
</pre>
|
||
|
||
<p class="continue">
|
||
sur la deuxième.
|
||
</p>
|
||
|
||
<p>
|
||
Par défaut, le texte caché est complètement invisible. Il est possible de
|
||
l'avoir en grisé en mettant un :
|
||
</p>
|
||
|
||
<pre>
|
||
\setbeamercovered{transparent}
|
||
</pre>
|
||
|
||
<h3>Customisations</h3>
|
||
|
||
<h4>Couleurs</h4>
|
||
<p>
|
||
Beamer permet de modifier les couleurs de beacoup de types d'élèments. Il
|
||
y a une « beamer color » associée à chaque type d'élément (elles sont
|
||
listées dans le manuel), et l'on peu modifier chaque couleur
|
||
indépendament des autres. Cela se fait avec la commande
|
||
<kbd>\setbeamercolor</kbd> qui prend en premier argument le nom de la
|
||
couleur, et en deuxième argument une spécification de couleur. Par
|
||
exemple :
|
||
</p>
|
||
|
||
<pre>
|
||
\setbeamercolor{normal text}{fg=red,bg=blue}
|
||
</pre>
|
||
|
||
<p class="continue">
|
||
fait en sorte que le texte ordinaire soit en rouge sur fond bleu. On peut
|
||
spécifier des couleurs définies à l'aide du package xcolor.
|
||
</p>
|
||
|
||
<h4>Templates</h4>
|
||
|
||
<p>
|
||
Les divers éléments répétitifs des slides sont définis à l'aide de
|
||
templates, qui sont du code évalué pour chaque slide. Par exemple,
|
||
l'arrière-plan des slides est définie par le template
|
||
<kbd>background</kbd>. Supposons que l'on veuille mettre l'image
|
||
<kbd>ploum.jpg</kbd> comme fond de transparents. Il suffit de faire :
|
||
</p>
|
||
|
||
<pre>
|
||
\pgfdeclareimage[height=96mm,width=128mm]{nombidon}{ploum}
|
||
\setbeamertemplate{background}{\pgfuseimage{nombidon}}
|
||
</pre>
|
||
|
||
<p class="continue">
|
||
et tous les transparents suivants auront l'image en arrière-plan. On a
|
||
utilisé ici les commandes graphiques du package pgf. 96mm et 128mm sont
|
||
les dimensions par défaut de la page pour beamer (le viewer de pdf fait
|
||
un zoom, il est donc inutile et même nuisible de changer la taille de la
|
||
page).
|
||
</p>
|
||
|
||
<h4>Conclusion</h4>
|
||
|
||
<p>
|
||
Il existe également un mécanisme de « beamer font » qui fonctionne
|
||
similairement. Noter qu'il existe des thèmes définissant d'un coup tous les
|
||
templates, couleurs et polices. Souvent, il vaut mieux choisir un thème, et
|
||
faire juste une ou deux modifications de détail...
|
||
</p>
|
||
|
||
<p>
|
||
Enfin, pour modifier une couleur, un template ou une police sur une zone
|
||
limitée et non globalement, on utilise le mécanisme classique des
|
||
groupes : il suffit d'encadrer entre accolades la zone du texte où l'on
|
||
veut que le changement ait un effet, et de mettre le
|
||
<kbd>\setbeamertemplate</kbd>, <kbd>\setbeamercolor</kbd> ou
|
||
<kbd>\setbeamerfont</kbd> juste après l'accolade ouvrante.
|
||
</p>
|
||
|
||
<h3>Gadgets amusants</h3>
|
||
|
||
<p>
|
||
On peut aussi spécifier des effets graphique à effectuer lors d'un
|
||
changement de page, inclure des sons, des videos... Tout cela est décrit
|
||
dans le chapitre 13 du <a
|
||
href="../../noncvs/docs/beamer/beameruserguide.pdf">manuel</a>.
|
||
</p>
|
||
|
||
<h2>Note sur pdflatex</h2>
|
||
|
||
<p>
|
||
Comme il a été dit, pdflatex est une variante de latex qui pond du pdf au
|
||
lieu de sortir du dvi. Cela a certains effets secondaires au niveau de la
|
||
gestion de tout ce qui est graphique. En particulier, on ne peut plus
|
||
utiliser tout ce qui était à base de postscript : inclusion d'images eps,
|
||
pstricks, ... En compensation, pdflatex fournit pas mal de primitives
|
||
graphiques, qui suffisent dans la plupart des cas. En particulier, on peut
|
||
inclure directement (alors qu'avec latex, il faut les convertir en eps)
|
||
des images dans les formats bitmaps jpg et png. Pour des dessins
|
||
vectoriels, il vaut mieux les fournir directement au format pdf pour
|
||
l'inclusion. On peut convertir un eps en pdf avec la commande
|
||
<kbd>epstopdf</kbd>.
|
||
</p>
|
||
|
||
<div class="metainformation">
|
||
Auteur : Luc Habert.
|
||
Dernière modification le <date value="$Date: 2007-07-17 10:02:49 $" />.
|
||
</div>
|
||
|
||
</body>
|
||
</html>
|