如何对框架标题进行编号

如何对框架标题进行编号

我有一个简单的beamer演示文稿,带有标题框(包含作者、日期等信息)和几个带有相关标题框的部分。我想将此演示文稿分成几个部分并进行相应的编号,因此产生以下结构:

标题

与标题相关的附加框架(未编号)

1 节

1.1 第一个标题框

1.2 秒标题框

2 节

2.1 ...

2.2 ...

如何做到这一点?标题不应编号,也不应该关联框架。只有章节、子章节等。如果章节的“编号”可以切换为开/关,那就太好了,但这只是可选的。

编辑:编号不必超过各节。如果有更简单的方法,我愿意接受任何方法。

我得到以下信息:

\documentclass[xcolor= pdftex, dvipsnames, table, 10pt]{beamer}
\mode<presentation>
{
    \usetheme{Default}
    %\usetheme{Madrid}
    \setbeamercovered{transparent}
    \usecolortheme{whale}
}

\AtBeginSection[]{
    \begin{frame}
        \vfill
        \centering
        \begin{beamercolorbox}[sep=8pt,center,shadow=false,rounded=true]{title}
            \usebeamerfont{title}\secname\par%
        \end{beamercolorbox}
        \vfill
    \end{frame}
}

\begin{document} 

\title{Title} 
\author{Author}
\institute{Firm}
\date{Date} 

\setbeamertemplate{title page}[default][colsep=-4bp,rounded=true,shadow=false]
\setbeamertemplate{footline}[page number]
\setbeamertemplate{frametitle}[default][colsep=-4bp,rounded=false,shadow=false]
\beamertemplatenavigationsymbolsempty

\frame{\titlepage}

\section{First section}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\section{Second section}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\end{document}

如果缺少任何信息或者上述问题有任何不清楚的地方,请告诉我。

答案1

作为一个快速而粗略的解决方案,我建议重新定义\frametitle将框架编号直接放入框架标题中。我猜正确的解决方案是重新定义框架标题的外部主题模板。

这些变化包括\thesection向您的部分框架添加内容,并在其后添加几行定义框架计数器并将其添加到标题中。

\documentclass[xcolor= pdftex, dvipsnames, table, 10pt]{beamer}
\mode<presentation>
{
    %\usetheme{Default}
    %\usetheme{Madrid}
    \setbeamercovered{transparent}
    \usecolortheme{whale}
}

\AtBeginSection[]{
    \begin{frame}
        \vfill
        \centering
        \begin{beamercolorbox}[sep=8pt,center,shadow=false,rounded=true]{title}
            \usebeamerfont{title}\thesection\ \secname\par%
        \end{beamercolorbox}
        \vfill
    \end{frame}
}

\makeatletter
\newcounter{frame}[section]
\def\theframe{\thesection.\arabic{frame}}
\AtBeginEnvironment{frame}{}
\let\frametitleold\frametitle
\def\frametitle#1{%
  \refstepcounter{frame}%
  \ifnum\c@section=0
    \frametitleold{#1}%
  \else
    \frametitleold{\theframe\ #1}%
  \fi
}
\makeatother

\begin{document} 

\title{Title} 
\author{Author}
\institute{Firm}
\date{Date} 

\setbeamertemplate{title page}[default][colsep=-4bp,rounded=true,shadow=false]
\setbeamertemplate{footline}[page number]
\setbeamertemplate{frametitle}[default][colsep=-4bp,rounded=false,shadow=false]
\beamertemplatenavigationsymbolsempty

\frame{\titlepage}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\section{First section}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\section{Second section}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\begin{frame}
    \frametitle{Title}
    \framesubtitle{Subtitle}
\end{frame}

\end{document}

结果: 在此处输入图片描述

相关内容