Beamer:\againframe 无需创建新页面(即模拟覆盖)

Beamer:\againframe 无需创建新页面(即模拟覆盖)

TL:DR:有没有办法解决多帧伪叠加的问题?

正如解释的那样这里我想向同一组覆盖中添加多个背景。此主题给出了几个解决方案,但没有一个是完美的:第一个解决方案增加了一些边距,因此需要任意增加背景直到看不到边距,这可能会稍微放大背景图像,第二个解决方案似乎更好,但它增加了新页面。基本上,第二个解决方案通过以下方式添加新页面来添加一些框架:

\setbeamertemplate{background}{...}
\againframe<2>{myframelabel}

但不幸的是,这会添加新页面而不是覆盖:

在此处输入图片描述

我设法通过使用一些方法解决了页码问题\addtocounter{framenumber}{-1},但不幸的是,小框架(左上角的点)仍然很糟糕......

有没有办法解决多帧伪叠加的问题?

梅威瑟:

\documentclass{beamer}

\useoutertheme[footline=institutetitle,subsection=false]{miniframes}
\usecolortheme{beaver}
\setbeamercolor{separation line}{use=structure,bg=darkred!80!black}

\makeatletter
\setbeamertemplate{footline}
{%
  % \begin{beamercolorbox}[colsep=1.5pt]{upper separation line foot}
  % \end{beamercolorbox}
  \hbox{%
    \begin{beamercolorbox}[wd=0.1\paperwidth, ht=2.5ex, dp=1.125ex, left]{title in head/foot}%
      \hspace*{4ex}
      \usebeamerfont{author in head/foot}\insertshortauthor~~\beamer@ifempty{%
        %\insertshortinstitute
      }{}{}
    \end{beamercolorbox}%
    \begin{beamercolorbox}[wd=0.8\paperwidth, ht=2.5ex, dp=1.125ex, center]{title in head/foot}%
      \usebeamerfont{title in head/foot}\insertshorttitle
    \end{beamercolorbox}%
    \begin{beamercolorbox}[wd=0.1\paperwidth, ht=2.5ex, dp=1.125ex, right]{title in head/foot}%
      \usebeamerfont{title in head/foot}\insertframenumber/\inserttotalframenumber\hspace*{4ex}
    \end{beamercolorbox}}
}
\makeatother

\begin{document}
\section{test}

{
  \setbeamertemplate{background}{\includegraphics[height=\paperheight,width=\paperwidth]{example-image-a}}
  \begin{frame}<1>[label=myframelabel]
    \begin{itemize}
      \item<+-> a
      \item<+-> b
      \item<+-> c
      \item<+-> d
      \item<+-> e
    \end{itemize}
  \end{frame}
  \setbeamertemplate{background}{\includegraphics[height=\paperheight,width=\paperwidth]{example-image-b}}
  \addtocounter{framenumber}{-1}\againframe<2>{myframelabel}
  \setbeamertemplate{background}{\includegraphics[height=\paperheight,width=\paperwidth]{example-image-c}}
  \addtocounter{framenumber}{-1}\againframe<3>{myframelabel}
  \setbeamertemplate{background}{\includegraphics[height=\paperheight,width=\paperwidth]{example-image-a}}
  \addtocounter{framenumber}{-1}\againframe<4->{myframelabel}
}

\begin{frame}
  Hello, I'm a new empty frame
\end{frame}
\end{document}

- 编辑 -

我终于找到了我原来问题的一个问题这里,所以我不需要再解决这个问题了,但当然我仍然很好奇想知道答案。

相关内容