.png)
beamer
プレゼンテーションのスライドに独自のsがあることを望みますframesubtile
。これについては@samcarter_is_at_topanswers.xyzが私を助けますこの答え基本的な要求は満たされましたが、プレゼンテーションの「スライド」にある図 (聴衆の要求に応じて番号が付けられている) では\only<+>{\framesubtitle{...} <slide content>}
キャプション番号が増加しず、プレゼンテーションのどこからでもこの図を参照できないことがわかりました。
私の問題を示す MWE は次のとおりです。
\documentclass{beamer}
\setbeamertemplate{caption}[numbered]
\makeatletter
\newcommand*{\slideinframe}{\number\beamer@slideinframe}
\newcounter{bar}
\newcommand{\foo}{%
\setcounter{bar}{\insertframeendpage}%
\addtocounter{bar}{-\insertframestartpage}%
\addtocounter{bar}{1}%
(\slideinframe/\thebar)%
}
\makeatother
\usepackage{lipsum}
\begin{document}
\begin{frame}
\frametitle{Foo \foo}
\only<+>{
\framesubtitle{Bar}
\lipsum[1][1-3], see figure \ref{fig:ena}
\begin{figure}%\centering
\includegraphics[width=0.5\linewidth]{example-image-a}
\caption{Figure ena}
\label{fig:ena}
\end{figure}
}
\only<+>{
\framesubtitle{Baz}
\lipsum[1][4-7], see figure \ref{fig:dva}
\begin{figure}%\centering
\includegraphics[width=0.5\linewidth]{example-image-b}
\caption{Figure dva}
\label{fig:dva}
\end{figure}
}
\end{frame}
\end{document}
3 回コンパイルした結果は次のようになります。
答え1
figure
次のようにしてカウンターをリセットしないようにすることができます。
\documentclass{beamer}
\setbeamertemplate{caption}[numbered]
% Remove the figure counter from the list of counters that are reset after each overlay.
% modified from https://tex.stackexchange.com/a/15089/36296
\makeatletter
\def\donotresetfigures{{%
\let\@@elt\relax
\def\@elt##1{%
\expandafter\ifx\csname ##1\endcsname\c@figure%
\else%
\@@elt {##1}%
\fi%
}%
\edef\beamer@overlaycounterresets{\beamer@overlaycounterresets}%
\let\@elt\relax%
\def\@@elt{\@elt}%
\xdef\beamer@overlaycounterresets{\beamer@overlaycounterresets}%
}}
\donotresetfigures
\makeatother
\begin{document}
\begin{frame}
\only<+>{
see figure \ref{fig:ena}
\begin{figure}
\includegraphics[width=0.5\linewidth]{example-image-a}
\caption{Figure ena}
\label<.>{fig:ena}
\end{figure}
}
\only<+>{
see figure \ref{fig:dva}
\begin{figure}
\includegraphics[width=0.5\linewidth]{example-image-b}
\caption{Figure dva}
\label<.>{fig:dva}
\end{figure}
}
\end{frame}
\end{document}