Vous êtes ici : Accueil  »   Modifier un thème Beamer  »   Lignes de séparation

Beamer : modifier un thème

24/11/2008

Les lignes d'en-tête et de pied de page

Les lignes de séparation sont simplement constituées d'une beamercolorbox vide dont on ajuste en particulier la couleur de fond.

Les commandes suivantes peuvent être employées dans un fichier de style personnel, dans le préambule (s'il y a une ou deux valeurs seulement à modifier) et dans le corps du document entre deux environnements {frame} pour introduire des ruptures de couleurs entre deux sections par exemple (pas forcément trés esthétique, mais bon !). Exceptions possibles à voir.

[haut]1 - Les lignes de séparation des éléments d'en-tête

Je prends pour exemple le thème Szeged qui affiche ces lignes. Il utilise un thème externe beamerthemeouterminiframes.sty qui redéfinit tout ce qui est en-tête et pied de page. Les lignes de séparation sont introduites de cette façon :

\defbeamertemplate*{headline}{miniframes theme}
{%
  \begin{beamercolorbox}[colsep=1.5pt]{upper separation line head}
  \end{beamercolorbox}
  ...
  \begin{beamercolorbox}[colsep=1.5pt]{middle separation line head}
  \end{beamercolorbox}
  ...  
  \begin{beamercolorbox}[colsep=1.5pt]{lower separation line head}
  \end{beamercolorbox}
}

... en supprimant tout ce qui concerne les sections et sous-sections. Il est donc simple de modifier les couleurs de ces lignes par :

après modification

\setbeamercolor{upper separation line head}{bg=red}
\setbeamercolor{middle separation line head}{bg=red}
\setbeamercolor{lower separation line head}{bg=red}

[haut]2 - Les lignes de séparation des éléments du pied de page

On retrouve les 3 même lignes possibles dans le pied de page (seules les lignes supérieures et inférieures sont utilisées par ce thème.

\defbeamertemplate*{footline}{miniframes theme}
{%
  \begin{beamercolorbox}[colsep=1.5pt]{upper separation line foot}
  \end{beamercolorbox}
  ... 
  \begin{beamercolorbox}[colsep=1.5pt]{lower separation line foot}
  \end{beamercolorbox}
}

Leur couleur est aussi modifiable avec la commande :

\setbeamercolor{upper separation line foot}{bg=red}
\setbeamercolor{middle separation line foot}{bg=red}
\setbeamercolor{lower separation line foot}{bg=red}


[haut]3 - Tout ensemble

On peut aussi attribuer une même couleur à ces 6 lignes en une seule commande  :

\setbeamercolor{separation line}{bg=red}

C'est cette commande que l'on trouve (les couleurs sont parfois définies en-dehors des thèmes de couleurs) dans le fichier de thème beamerthemeSzeged.sty :

\setbeamercolor{separation line}{use=structure,bg=structure.fg!50!bg}

Curieusement, il est possible d'obtenir une couleur différente en modifiant la couleur d'arrière-plan de l'en-tête (headline) global.
Ici, le rouge obtenu semble bien être mélangé à autre chose (sûrement un pourcentage du bleu de structure ?) et on obtient en outre 2 couleurs différentes pour les noms de sections :

screenshot

\setbeamercolor{headline}{bg=red}


[haut]4 - Lignes décoratives
image

Au lieu d'une couleur fixe, il est possible de rendre ces lignes un peu plus décoratives (?) en insérant un motif dans la beamercolorbox, en variant la valeur de colsep pour voir l'effet :

screenshot

% ------- Definition de l'image --------------
\setbeamertemplate{ruledecor}{\includegraphics[width=\paperwidth]{redrule2}}
\newcommand\insertruledecor{\usebeamertemplate*{ruledecor}}
% -------------- Headline --------------------
\defbeamertemplate*{headline}{miniframes theme}
{%
\begin{beamercolorbox}[colsep=0.2ex]{upper separation line head}
  \insertruledecor
\end{beamercolorbox}
...
\begin{beamercolorbox}[colsep=0.1ex]{lower separation line head}  
    \insertruledecor
\end{beamercolorbox}
}

On peut éliminer la partie de bordure rouge à gauche en ajoutant un leftskip négatif, sans être bien sûre que ce soit une bonne idée. On peut aussi, en fonction du décor choisi, éliminer complétement la bordure en ne mettant pas de colsep.


[haut]5 - Lignes courtes

Jouer sur la longueur des lignes

image



page trouvée sur http://mcclinews.free.fr

Novembre 2008 - mcclinews