在默认的 beamer 主题下,使用 allowframebreaks 选项将块的标题和正文放在同一张幻灯片中

在默认的 beamer 主题下,使用 allowframebreaks 选项将块的标题和正文放在同一张幻灯片中

我正在准备一个使用默认 beamer 主题的演示文稿,因为我需要一些非常简单的东西。

我使用的背景图像必须从右向左淡出,并且我修改了边距以使图像的最右侧部分完全可见。默认主题允许块完全透明。

我需要使用allowframebreaks选项1:但是一旦我有几个跨越多张幻灯片的块,一些块的标题和正文就会位于不同的幻灯片中。

我该如何解决这个问题?我尝试了几种方法,比如使用一个花哨的主题并实施这个答案但是修改标题页、总体布局等所有其他选项则需要做大量工作。

在 MWE 之下。

\documentclass[10pt,aspectratio=169]{beamer}

\usepackage{graphicx}
\usepackage{pgf,pgfplots}
\usepackage{tikz}
\usetikzlibrary{fadings} 
\usepackage{tikzpagenodes}
\usepackage{lipsum}  

\beamertemplatenavigationsymbolsempty
\setbeamertemplate{frametitle continuation}{}
\setbeamersize{text margin left=5mm,text margin right=40mm} 

\usebackgroundtemplate{
    \tikz[overlay,remember picture]
    \node[opacity=1, at=(current page.center),inner sep=0pt,scope fading=west,blend mode=screen] {\includegraphics[height=\paperheight,width=\paperwidth]{example-image.pdf}};
}

\title{Test}
\date{}

\begin{document}
    \maketitle

        \begin{frame}[allowframebreaks]
            \frametitle{Go on}
    
            \begin{block}{Block 1}
                \lipsum[1]
            \end{block}
            
            \begin{block}{Block 2}
                \lipsum[1]
            \end{block}
    
        \end{frame}
\end{document} 

1我知道这allowframebreaks是一个非常危险的选择,但因为这是与朋友一起玩游戏的演示文稿,而不是用于会议或工作,所以使用它可以让我避免进行广泛的“布局检查”并插入许多合适的地方\begin{frame} ... \end{frame}

答案1

快速破解:您可以使用 tcolorbox 内部主题,用 tcolorboxes 替换普通的 beamer 块:

\documentclass[10pt,aspectratio=169]{beamer}

%\usepackage{graphicx}
\usepackage{pgf,pgfplots}
\usepackage{tikz}
\usetikzlibrary{fadings} 
\usepackage{tikzpagenodes}
\usepackage{lipsum}  

\beamertemplatenavigationsymbolsempty
\setbeamertemplate{frametitle continuation}{}
\setbeamersize{text margin left=5mm,text margin right=40mm} 

\usebackgroundtemplate{
    \tikz[overlay,remember picture]
    \node[opacity=1, at=(current page.center),inner sep=0pt,scope fading=west,blend mode=screen] {\includegraphics[height=\paperheight,width=\paperwidth]{example-image.pdf}};
}

\title{Test}
\date{}

\useinnertheme{tcolorbox}
\tcbsetforeverylayer{
  enhanced,
  interior hidden,
  title hidden
}

\begin{document}
    \maketitle

        \begin{frame}[allowframebreaks]
            \frametitle{Go on}
    
            \begin{block}{Block 1}
                \lipsum[1]
            \end{block}
            
            \begin{block}{Block 2}
                \lipsum[1]
            \end{block}
    
        \end{frame}
\end{document} 

在此处输入图片描述

相关内容