我正在准备一个使用默认 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}