J'utilise la classe de documents beamer en latex pour faire une présentation. J'aurai un certain nombre de diapositives de sauvegarde qui sont là pour une consultation hors ligne, une référence, etc. J'aimerais vraiment que {total pages} soit équivalent à mon nombre total de pages sans compter les diapositives de sauvegarde (je ne veux pas décourager mon public sur la première page!). Est-ce que quelqu'un sait comment cela peut être fait?
Cela peut maintenant être réalisé avec l'option suivante sur toutes les diapositives de "sauvegarde":
\begin{frame}[noframenumbering]{My Title}
\end{frame}
Cela entraînera l'affichage du numéro final (par exemple 25/25) sur ces pages.
Comme toujours, une question de goût.
J'ai défini deux commandes pour ce faire:
\newcommand{\beginbackup}{
\newcounter{framenumbervorappendix}
\setcounter{framenumbervorappendix}{\value{framenumber}}
}
\newcommand{\backupend}{
\addtocounter{framenumbervorappendix}{-\value{framenumber}}
\addtocounter{framenumber}{\value{framenumbervorappendix}}
}
Vous pouvez ensuite utiliser \beginbackup
et \backupend
avant et après votre diapositive de sauvegarde pour régler le nombre de diapositives.
Pour mon modèle de beamer, j'aime aussi ajouter
\setbeamertemplate{footline}{
\leavevmode%
\hbox{%
\begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}%
\usebeamerfont{author in head/foot}\insertshortauthor~~(\insertshortinstitute)
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
\usebeamerfont{title in head/foot}\insertshorttitle
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,right]{date in head/foot}%
\usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em}
\insertframenumber{} \hspace*{2ex} % hier hat's sich geändert
\end{beamercolorbox}}%
\vskip0pt%
}
dans la définition du \beginbackup
commande pour masquer le nombre total de pages dans les diapositives de sauvegarde, sinon vous obtiendrez quelque chose comme "24/18".
En utilisant tout cela, vos diapositives seront numérotées comme "x/Y" pour toutes les diapositives avant la sauvegarde, où Y est le nombre total de diapositives avant la première diapositive de sauvegarde, et les diapositives de sauvegarde continueront la numérotation des diapositives précédentes.
Cela peut être fait avec le package appendixnumberbeamer . Ajoutez simplement \usepackage{appendixnumberbeamer}
au préambule et utilisez \appendix
avant la première diapositive de sauvegarde.
Pour fixer manuellement le nombre total de trames à un certain nombre, disons 25, vous pouvez ajouter la commande suivante
\renewcommand{\inserttotalframenumber}{25}
juste après la commande\begin {document}.
Vous pouvez également ajouter la commande\appendix juste avant le début de vos diapositives de sauvegarde, afin que les sections/sous-sections correspondantes n'apparaissent pas dans la table des matières/la structure de navigation.
Il devrait être possible de modifier la commande de renouvellement ci-dessus afin qu'elle utilise automatiquement le dernier numéro de trame avant l'annexe, mais je ne sais pas comment le faire.
Insérez simplement
\renewcommand{\inserttotalframenumber}{\pageref{lastslide}}
après \ begin {document}, et placez le marqueur
\label{lastslide}
sur votre dernière diapositive.
Fanfan, merci pour votre réponse, votre réponse m'a orienté vers ce fichier sty que l'on peut inclure dans une classe de document beamer qui ne comptera automatiquement que le nombre d'images avant l'annexe, puis redémarrera le compte séparé pour les diapositives de l'annexe, assez soigné.
http://www.ensta.fr/~lelong/Latex/appendixnumberbeamer.sty
Merci également à Jérôme LELONG de l'avoir mis en ligne.
Vous pouvez mettre toutes vos diapositives de sauvegarde en annexe et utiliser le package appendixnumberbeamer
.
\documentclass[12pt]{beamer}
\usepackage{appendixnumberbeamer}
\begin{document}
\begin{frame}{Frames that counts}
\end{frame}
\appendix
\begin{frame}{Backup slides}
\end{frame}
\end{document}
La grande commande\insertpresentationendpage s'occupe de votre problème. Placez simplement\annexe au début de vos diapositives de sauvegarde.
\documentclass[t]{beamer}
\usepackage[absolute,overlay]{textpos}
\setbeamertemplate{navigation symbols}{}
\def\insertpresentationendframe{\inserttotalframenumber}
\makeatletter
\g@addto@macro{\appendix}{\immediate\write\@auxout{\string\@writefile{nav}{\noexpand\headcommand{\noexpand\def\noexpand\insertpresentationendframe{\the\c@framenumber}}}}}
\makeatother
\setbeamertemplate{footline}{%
\begin{picture}(54,12.5)(0,0)
\put(0.9,0.52){%
\begin{minipage}[b][12.5mm][c]{112.5mm}
\raggedleft
\insertframenumber/\insertpresentationendframe
\end{minipage}
}
\end{picture}
}
\begin{document}
\begin{frame}
slide in the main part
\only<2>{blub}
\end{frame}
\appendix
\section*{Backup}
\begin{frame}
\frametitle{backup}
not counting in the total frame number
\end{frame}
\end{document}
Une autre possibilité - qui a été récemment ajoutée à beamer - est d'utiliser le modèle appendixframenumber
:
\documentclass[t]{beamer}
\setbeamertemplate{footline}{
\hfill%
\usebeamercolor[fg]{page number in head/foot}%
\usebeamerfont{page number in head/foot}%
\setbeamertemplate{page number in head/foot}[appendixframenumber]%
\usebeamertemplate*{page number in head/foot}\kern1em\vskip2pt%
}
\begin{document}
\begin{frame}
slide in the main part
\only<2>{blub}
\end{frame}
\appendix
\section*{Backup}
\begin{frame}
\frametitle{backup}
not counting in the total frame number
\end{frame}
\end{document}