[Beamer] Notes de bas de page sur deux colonnes
Bonjour,
Sur BSur un diaporama Beamer, j'aimerais mettre certaines notes de bas de page (très courtes) sur deux colonnes, mais sans que cela ne s'applique à toutes mes notes de bas de page.
J'ai trouvé le code suivant sur internet permettant de redéfinir la commande \footnote afin de mettre toutes les notes de bas de page sur deux colonnes :
%multi-colums footnote
\makeatletter
\renewcommand{\@makefntext}[1]%
{\parindent 0em\everypar={\hangafter 1\hangindent 0em}\raggedright
\noindent\@makefnmark\hskip 1em\ignorespaces#1}
%%%%%%%%%%%%%%%%%%%%
\renewcommand<>\beamer@framefootnotetext[1]{%
\global\setbox\beamer@footins\vbox{%
\hsize0.5\framewidth%NEW
\textwidth\hsize
\columnwidth\hsize
\unvbox\beamer@footins
\reset@font\footnotesize
\@parboxrestore
\protected@edef\@currentlabel
{\csname p@footnote\endcsname\@thefnmark}%
\color@begingroup
\uncover#2{\@makefntext{%
\rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
\color@endgroup}}
\def\beamer@autobreakframebox{%
\global\setbox\beamer@splitbox=\box\voidb@x%
\ifbeamer@autobreak%
% Ok, frame was overful -> split it!
\setbox\@tempboxa=\vsplit\beamer@framebox to\beamer@autobreakfactor\textheight%
\global\setbox\beamer@splitbox=\box\beamer@framebox%
\@tempdima=\ht\beamer@splitbox%
\ifdim\@tempdima<\beamer@autobreaklastheight%
\global\beamer@autobreaklastheight=\@tempdima\relax%
\else%
\setbox\@tempboxa=\vbox{\unvbox\@tempboxa\unvbox\beamer@splitbox}%
\global\setbox\beamer@splitbox=\box\voidb@x%
\fi%
\setbox\beamer@framebox=\vbox to\textheight{\unvbox\@tempboxa%
\vskip\beamer@framebottomskipautobreak%
\ifvoid\beamer@splitbox%
\ifvoid\beamer@footins%
\else%
\begingroup
\usebeamercolor*[fg]{footnote}%
\footnoterule %
\setlength{\multicolsep}{0pt}%NEW
\begin{multicols}{2}%NEW
\unvbox \beamer@footins%
\end{multicols}%NEW
\global\setbox\beamer@footins=\box\voidb@x%
\endgroup
\fi%
\fi%
\beamer@exitcode%
}%
\else%
\setbox\beamer@framebox=\vbox to\textheight{\unvbox\beamer@framebox%
\vskip\beamer@framebottomskip%
\ifvoid\beamer@footins%
\else%
\begingroup
\usebeamercolor*[fg]{footnote}%
\footnoterule %
\setlength{\multicolsep}{0pt}%NEW
\begin{multicols}{2}%NEW
\unvbox \beamer@footins %
\end{multicols}%NEW
\global\setbox\beamer@footins=\box\voidb@x%
\endgroup
\fi%
\beamer@exitcode}%
\global\setbox\beamer@footins=\box\voidb@x%
\fi%
}
\makeatother
\setbeamertemplate{navigation symbols}{}
%end multi-columns footnote
J'ai aussi demandé à ce que les notes de bas de page soient référencées par des lettres (plutôt que par des numéros) :
\renewcommand{\thefootnote}{\alph{footnote}}
Problème : désormais, toutes mes notes de bas de page sont désormais écrites sur deux colonnes...
Ci-joint un ECM (dans la première diapo, j'obtiens l'effet voulu, mais pas dans la seconde...) :
\documentclass[french]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{multicol}
\usepackage{mathtools, stmaryrd, amsmath}
\usepackage{amssymb}
\usepackage{xcolor}
\usetheme{Warsaw}
\setbeamertemplate{theorems}[numbered]
\setbeamertemplate{block}[numbered]
\usepackage{lipsum}
\usepackage[french]{babel}
%multi-colums footnote
\makeatletter
\renewcommand{\@makefntext}[1]%
{\parindent 0em\everypar={\hangafter 1\hangindent 0em}\raggedright
\noindent\@makefnmark\hskip 1em\ignorespaces#1}
%%%%%%%%%%%%%%%%%%%%
\renewcommand<>\beamer@framefootnotetext[1]{%
\global\setbox\beamer@footins\vbox{%
\hsize0.5\framewidth%NEW
\textwidth\hsize
\columnwidth\hsize
\unvbox\beamer@footins
\reset@font\footnotesize
\@parboxrestore
\protected@edef\@currentlabel
{\csname p@footnote\endcsname\@thefnmark}%
\color@begingroup
\uncover#2{\@makefntext{%
\rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
\color@endgroup}}
\def\beamer@autobreakframebox{%
\global\setbox\beamer@splitbox=\box\voidb@x%
\ifbeamer@autobreak%
% Ok, frame was overful -> split it!
\setbox\@tempboxa=\vsplit\beamer@framebox to\beamer@autobreakfactor\textheight%
\global\setbox\beamer@splitbox=\box\beamer@framebox%
\@tempdima=\ht\beamer@splitbox%
\ifdim\@tempdima<\beamer@autobreaklastheight%
\global\beamer@autobreaklastheight=\@tempdima\relax%
\else%
\setbox\@tempboxa=\vbox{\unvbox\@tempboxa\unvbox\beamer@splitbox}%
\global\setbox\beamer@splitbox=\box\voidb@x%
\fi%
\setbox\beamer@framebox=\vbox to\textheight{\unvbox\@tempboxa%
\vskip\beamer@framebottomskipautobreak%
\ifvoid\beamer@splitbox%
\ifvoid\beamer@footins%
\else%
\begingroup
\usebeamercolor*[fg]{footnote}%
\footnoterule %
\setlength{\multicolsep}{0pt}%NEW
\begin{multicols}{2}%NEW
\unvbox \beamer@footins%
\end{multicols}%NEW
\global\setbox\beamer@footins=\box\voidb@x%
\endgroup
\fi%
\fi%
\beamer@exitcode%
}%
\else%
\setbox\beamer@framebox=\vbox to\textheight{\unvbox\beamer@framebox%
\vskip\beamer@framebottomskip%
\ifvoid\beamer@footins%
\else%
\begingroup
\usebeamercolor*[fg]{footnote}%
\footnoterule %
\setlength{\multicolsep}{0pt}%NEW
\begin{multicols}{2}%NEW
\unvbox \beamer@footins %
\end{multicols}%NEW
\global\setbox\beamer@footins=\box\voidb@x%
\endgroup
\fi%
\beamer@exitcode}%
\global\setbox\beamer@footins=\box\voidb@x%
\fi%
}
\makeatother
\setbeamertemplate{navigation symbols}{}
%end multi-columns footnote
\renewcommand{\thefootnote}{\alph{footnote}}
\begin{document}
\author{Auteur}
\title{Titre}
\institute{}
\date{}
\begin{frame}
\frametitle{Propriétés}
\begin{block}{}
\begin{enumerate}
\item T auto-adjoint \footnote[frame]{$T^* = T$}<+-> $\implies \sigma(T) \subset \mathbb{R}$ ;
\item T positif \footnote[frame]{$T^* = T$ et $\langle Tx, x \rangle \geqslant 0, \forall \, x \in H$}<+-> $\iff \sigma(T) \subset \mathbb{R}_+$ ;
\item T unitaire \footnote[frame]{$T^*T=TT^* = Id$}<+-> $\implies \sigma(T) \subset \mathbb{T}$ ;
\item T normal \footnote[frame]{$T^*T=TT^*$}<+-> $\implies \lVert T \rVert = r(T)$ ;
\item $\lVert T \rVert^2 = \lVert T^* T \rVert = r(T^* T)$.
\end{enumerate}
\end{block}
\end{frame}
\begin{frame}
\lipsum[1]\footnote{\lipsum[2]}
\end{frame}
\end{document}
Merci d'avance !