configurações de cores do beamer para nomes de seções no cabeçalho

configurações de cores do beamer para nomes de seções no cabeçalho

Esseguiaexplica como produzir cabeçalhos dinâmicos, onde a seção atual é destacada.

Mas como posso controlar a cor usada para realçar? (para economizar espaço, configurei o tamanho da fonte do cabeçalho para um valor pequeno, então gostaria de adicionar algum contraste para deixar mais claro em que seção da palestra estamos).

Responder1

Se entendi bem sua pergunta, aqui está uma solução possível; Adicionei uma moldura colorida ao redor dos títulos das seções tanto no ToC geral quanto nos ToCs gerados no início de cada seção:

\documentclass{beamer}
\usepackage{tikz}
\usetheme{Malmoe}

\newcommand\sectioncolor{white}

\newcommand\SectionBox[1]{%
  \tikz\node[rectangle,fill=\sectioncolor,rounded corners] {#1};
}

\AtBeginSection{%
  \setbeamercolor{section in toc}{fg=black,bg=\sectioncolor}
  \begin{frame}<beamer>
  \frametitle{Outline \thesection}
  \tableofcontents[currentsection,subsectionstyle=show/show/shaded]
  \end{frame}
}

\setbeamertemplate{section in toc shaded}[default][7]

\makeatletter
\long\def\beamer@section[#1]#2{%
  \beamer@savemode%
  \mode<all>%
  \ifbeamer@inlecture
    \refstepcounter{section}%
      \renewcommand\sectioncolor{%
      \ifcase\value{section}\or blue!20\or green!80!black\or red!80!black!50\or yellow!30!black!50\else orange!30!black!50\fi}
    \beamer@ifempty{#2}%
    {\long\def\secname{#1}\long\def\lastsection{#1}}%
    {\global\advance\beamer@tocsectionnumber by 1\relax%
      \long\def\secname{#2}%
      \long\def\lastsection{#1}%
      \addtocontents{toc}{\protect\beamer@sectionintoc{\the\c@section}%
        {\protect\tikz\protect\node[rectangle,fill=\sectioncolor,rounded corners] {#2};}%
        {\the\c@page}{\the\c@part}%
        {\the\beamer@tocsectionnumber}}}%
    {\let\\=\relax\xdef\sectionlink{{Navigation\the\c@page}{\noexpand\secname}}}%
    \beamer@tempcount=\c@page\advance\beamer@tempcount by -1%
    \beamer@ifempty{#1}{}{%
      \addtocontents{nav}{\protect\headcommand{\protect\sectionentry{\the\c@section}{#1}{\the\c@page}{\secname}{\the\c@part}}}%
      \addtocontents{nav}{\protect\headcommand{\protect\beamer@sectionpages{\the\beamer@sectionstartpage}{\the\beamer@tempcount}}}%
      \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}%
    }%
    \beamer@sectionstartpage=\c@page%
    \beamer@subsectionstartpage=\c@page%
    \def\insertsection{\expandafter\hyperlink\sectionlink}%
    \def\insertsubsection{}%
    \def\insertsubsubsection{}%
    \def\insertsectionhead{\hyperlink{Navigation\the\c@page}{#1}}%
    \def\insertsubsectionhead{}%
    \def\insertsubsubsectionhead{}%
    \def\lastsubsection{}%
    \Hy@writebookmark{\the\c@section}{\secname}{Outline\the\c@part.\the\c@section}{2}{toc}%
    \hyper@anchorstart{Outline\the\c@part.\the\c@section}\hyper@anchorend%
    \beamer@ifempty{#2}{\beamer@atbeginsections}{\beamer@atbeginsection}%
  \fi%
  \beamer@resumemode}%
\makeatother

\begin{document}

\begin{frame}
\frametitle{General Outline}
\tableofcontents
\end{frame}

\section{Test Section One}
\subsection{Test Subsection One One}
\begin{frame}test one\end{frame}
\subsection{Test Subsection One Two}
\begin{frame}test one\end{frame}

\section{Test Section Two}
\subsection{Test Subsection Two One}
\begin{frame}test one\end{frame}
\subsection{Test Subsection Two Two}
\begin{frame}test one\end{frame}
\subsection{Test Subsection Two Three}
\begin{frame}test one\end{frame}

\section{Test Section Three}
\subsection{Test Subsection Three One}
\begin{frame}test one\end{frame}
\subsection{Test Subsection Three Two}
\begin{frame}test one\end{frame}

\end{document}

O ToC geral:

insira a descrição da imagem aqui

Dois dos ToCs no início das seções:

insira a descrição da imagem aqui

insira a descrição da imagem aqui

Como a modificação é necessária para as seções na barra de navegação e não nos ToCs como pensei inicialmente, a solução é muito mais fácil: basta redefinir os templates section in head/foot(para a seção atual) e section in head/foot shaded(para seções diferentes da atual). No exemplo a seguir usei uma moldura colorida para a seção atual, mas você pode usar qualquer outro estilo que desejar:

\documentclass{beamer}
\usepackage{tikz}
\usetheme{Singapore}

\definecolor{SectionBox}{RGB}{60,160,0}

\setbeamertemplate{section in head/foot}{\hfill\protect\tikz\protect\node[rectangle,fill=SectionBox!90,rounded corners=1pt,inner sep=1pt,] {\textcolor{white}{\insertsectionhead}};}
\setbeamertemplate{section in head/foot shaded}{\textcolor{structure!40}{\hfill\insertsectionhead}}


\begin{document}

\section{Test Section One}
\subsection{Test Subsection One One}
\begin{frame}test section one\end{frame}
\subsection{Test Subsection One Two}
\begin{frame}test section  one\end{frame}

\section{Test Section Two}
\subsection{Test Subsection Two One}
\begin{frame}test section  two\end{frame}
\subsection{Test Subsection Two Two}
\begin{frame}test section  two\end{frame}
\subsection{Test Subsection Two Three}
\begin{frame}test  section  two\end{frame}

\section{Test Section Three}
\subsection{Test Subsection Three One}
\begin{frame}test section  three\end{frame}
\subsection{Test Subsection Three Two}
\begin{frame}test section  three\end{frame}

\end{document}

Algumas imagens de algumas das manchetes:

insira a descrição da imagem aqui

insira a descrição da imagem aqui

insira a descrição da imagem aqui

informação relacionada