Commit 54dd5200 authored by Cédric Ware's avatar Cédric Ware
Browse files

Add hack to reduce \textheight to (approximately) take frame title into account.

parent 4a01bece
......@@ -29,6 +29,7 @@
\newif\iftpt@navsymbols\tpt@navsymbolstrue
\newif\iftpt@titleaffiliation\tpt@titleaffiliationfalse
\newif\iftpt@affiliation\tpt@affiliationfalse
\newif\iftpt@textheighthack\tpt@textheighthacktrue
\tptthemekeys{%
%
% On définit ici ce que font les options, mais on ne les traitera
......@@ -58,14 +59,21 @@
%
% slim : réduit l'encombrement vertical des frames.
slim/.style={alignframetitle=baseline,slim@},
slim@/.code={\setlength{\tptframetitlefriezesep}{%
\dimexpr \baselineskip - \tptframetitlefriezeheight \relax}},
noslim/.code={\setlength{\tptframetitlefriezesep}{0.112\paperheight}},
slim@/.code={%
\setlength{\tptframetitlefriezesep}{%
\dimexpr \baselineskip - \tptframetitlefriezeheight \relax}%
\tptcalculateheadfoot
},
noslim/.code={%
\setlength{\tptframetitlefriezesep}{0.112\paperheight}%
\tptcalculateheadfoot
},
%
% infolines : affiche les sections en en-tête. Utilise l'option slim.
infolines/.style={slim,infolines@},
infolines@/.code={%
\setbeamertemplate{headline}[infolines theme]%
\tptheadlineplumb
\tptcalculateheadfoot
},
%
......@@ -172,6 +180,20 @@
frametitleyshiftifsubtitle/.value required,
frametitle yshift if subtitle/.style={frametitleyshiftifsubtitle=#1},
frame title yshift if subtitle/.style={frametitleyshiftifsubtitle=#1},
%
% Active/désactive un hack de la headline pour retirer
% (approximativement) la taille du titre du frame de \textheight.
% À désactiver quand on change le template de la headline.
textheighthack/.is choice,
textheighthack/.default=true,
textheighthack/true/.code={%
\tpt@textheighthacktrue
\tptcalculateheadfoot
},
textheighthack/false/.code={%
\tpt@textheighthackfalse
\tptcalculateheadfoot
},
}
% \ProcessPgfOptions à la fin du package, après les définitions.
......@@ -508,6 +530,17 @@
%%%% En tête
% Macro spéciale pour ajouter la hauteur (prédéfinie) du titre du frame
% dans la headline, si le hack de textheight est activé.
\newcommand*\tptheadlineplumb{%
\addtobeamertemplate{headline}{}{%
\iftpt@textheighthack
\vskip\tptframetitlefriezesep
\fi
}%
}
\tptheadlineplumb
%
% Titre du frame : dimensions.
%
......@@ -528,7 +561,11 @@
%
\defbeamertemplate*{frametitle}{tpt default}[1][]{%
\tptthemekeys{#1}% Active les options données (comme pour le package).
\nointerlineskip% On ne saute pas de ligne après l'en-tête.
\nointerlineskip% On ne saute pas de ligne après l'en-tête...
\iftpt@textheighthack% ... voire on compense le saut de la headline.
\ifbeamer@plainframe\else
\vskip-\tptframetitlefriezesep
\fi\fi
%
% La beamercolorbox prend tout le frame (moins les éventuelles sidebars).
\setlength{\tpt@frametitle@width}{%
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment