在 beamer 中,我在每个部分的开头都放了一张幻灯片
\usepackage{nameref}
\newcommand*{\currentname}{\@currentlabelname}
\AtBeginSection[]
{
\begin{frame}
\begin{beamerboxesrounded}[scheme=esi-blue,shadow=true]{}
\begin{center}
\LARGE{\textcolor{white}{\textbf{\currentname}}}
\end{center}
\end{beamerboxesrounded}
\end{frame}
}
问题是,我的部分名称定义为,例如,\section[ASLR]{Defeating address layout randomisation}
但是,介绍的幻灯片使用该部分的简称(在上面的例子中:“ASLR”),我希望它是长名称(在上面的例子中:“打败地址布局随机化”)。
有什么想法吗?我尝试了几种方法,但要么结果与上述代码类似,要么幻灯片上部小目录中的短节名称表现非常糟糕(带有 Beamer 的导航选项)
答案1
不需要外部包,您只需使用 beamer 命令即可\insertsection
:
\documentclass{beamer}
\AtBeginSection[]
{
\begin{frame}
\begin{beamerboxesrounded}[shadow=true]{}
\begin{center}
\LARGE\textcolor{gray}{\textbf{\insertsection}}
\end{center}
\end{beamerboxesrounded}
\end{frame}
}
\begin{document}
\section[ASLR]{Defeating address layout randomisation}
\begin{frame}
abc
\end{frame}
\end{document}