латексный проектор: предотвращение показа ТОС за один раз

Обычно я использую

\AtBeginSection[]
{
  \begin{frame}<beamer>{Gliederung}
    \tableofcontents[currentsection]
  \end{frame}
}

в моей преамбуле, чтобы добиться этого, прежде чем начинается новый раздел, оглавление отображается с выделенным теперь начальным разделом.

В докладе, который я на самом деле готовлю, есть один специальный раздел, для которого я не хочу такого поведения. Переход с предыдущего раздела должен быть «тихим». Все остальные разделы должны начинаться так же, как сейчас.

Я уверен, что это возможно.


person cknoll    schedule 08.05.2010    source источник


Ответы (2)


В руководстве на проектор команда \AtBeginSection объясняется следующим образом:

\AtBeginSection[special star text]{text}

Если вы объявите специальный раздел с помощью звездочки \section*, таблица содержания раздела не появится. Это решение первое, что приходит на ум, но может изменить способ представления раздела в документе.

Другой подход (экспериментальный, я его никогда не тестировал) - использовать логический параметр. Если установлен логический параметр, то код не печатается. Затем вы обычно объявляете свой раздел, но устанавливаете логическое значение вокруг своего кода.

Вот пример кода, который должен помочь:

\RequirePackage{ifthen} % package required

\newboolean{sectiontoc}
\setboolean{sectiontoc}{true} % default to true

\AtBeginSection[]
{
  \ifthenelse{\boolean{sectiontoc}}{
    \begin{frame}<beamer>{Gliederung}
      \tableofcontents[currentsection]
    \end{frame}
  }
}

\newcommand{\toclesssection}[1]{
  \setboolean{sectiontoc}{false}
  \section{#1}
  \setboolean{sectiontoc}{true}
}

Затем в документе просто объявите свой специальный раздел как \toclesssection{My section without the toc}.

person Lohrun    schedule 10.05.2010
comment
\section* удаляет весь раздел из оглавления, что мне не нужно. Вторая часть, использующая логическую переменную, работает отлично! Спасибо! - person snwflk; 13.07.2020

Другой подход - временно изменить содержимое \AtBeginSection:

\documentclass{beamer}


\AtBeginSection[]
{
  \begin{frame}<beamer>{Gliederung}
    \tableofcontents[currentsection]
  \end{frame}
}


\begin{document}

\section{section with toc}  
\begin{frame}
    abc
\end{frame} 

\begingroup
    \AtBeginSection[]{}
    \section{section without toc}   
    \begin{frame}
        abc
    \end{frame} 
\endgroup

\section{section with toc}  
\begin{frame}
    abc
\end{frame} 

\end{document}
person samcarter_is_at_topanswers.xyz    schedule 27.02.2019