我想基于框架环境创建一个新的环境,但我想修改命令\frametitle
以便它也显示当前部分的标题。
答案1
如果您可以简单地放置一个简单的 MWE,那就容易多了。无论如何,它只有六行代码。所以这是我的猜测。
\documentclass{beamer}
\newenvironment{slide}[1]
{\begin{frame}[environment=slide]
\frametitle{\insertsection-#1}}
{\end{frame}}
\begin{document}
\section{Sec shun 1}
\frame{Dummy frames}
\begin{slide}{My title 1}
Some stufff
\end{slide}
\section{Sec shun 2}
\begin{slide}{My title 2}
Some other stufff
\end{slide}
\frame{Dummy frames}
\end{document}
答案2
使用这个方便的xpatch
包,您可以简单地将该部分添加到框架标题。无需定义新环境并遇到此新环境将导致的所有问题。
\documentclass{beamer}
\usepackage{xpatch}
\makeatletter
\patchcmd\beamer@@tmpl@frametitle{\insertframetitle}{\insertsection-\insertframetitle}{}{}
\makeatother
\begin{document}
\section{Sec shun 1}
\frame{Dummy frames}
\begin{frame}{My title 1}
Some stufff
\end{frame}
\section{Sec shun 2}
\begin{frame}{My title 2}
Some other stufff
\end{frame}
\frame{Dummy frames}
\end{document}