Beamer のトップラインのナビゲーションサークルの色と陰影を制御する

Beamer のトップラインのナビゲーションサークルの色と陰影を制御する

\useoutertheme{miniframes}私は、と\useinnertheme{circles}、そしてデフォルトのカラーテーマを独自に改造したバージョンを使用して、Beamer でプレゼンテーションを準備しています。

上部にフランクフルトのようなナビゲーション バーを配置したいのですが、背景色を設定する代わりに、上部のバーの背景となる画像を用意しています。

私が望むのは、現在のセクション タイトルとサブセクションのドットを、次のように残りの部分と比較して強調表示することです。

正しい陰影、ただし背景色あり

...ただし、これは「ヘッド/フッターのセクション」の背景色を宣言した場合にのみ機能します。{bg=}その定義を設定すると、アクティブなセクションと円が影付きになります。暗い残りよりも、それは私が望んでいることの反対です:

背景は正しいが、陰影が間違っている

fgを完全に白に設定すると、すべて白くなり、非アクティブな領域には陰影がありません。私が欲しいのは、最初の画像に 2 番目の画像の背景で陰影を付けることなのです。

どうすればこれを実現できるでしょうか?


編集: 最小限の動作例

以下に最小限の動作例を示します。機能させるには背景画像が必要です。この背景画像The Internetz(TM)より。

最小限の動作例のコードは以下のとおりです。 には 3 つの異なるオプションがあります\setbeamercolor{section in head/foot}オプション1陰影のない真っ白なナビゲーションで正しい背景を生成します。オプション2背景は正しいが陰影が間違っている(暗い背景画像では強調された部分が暗くなる)オプション3正しい陰影を付けますが、画像を覆う単色の背景色を設定します。

私が欲しいのは、オプション 1 と 2 の背景画像ですが、オプション 3 のナビゲーション項目のシェーディングです。

\documentclass[compress]{beamer}
\useoutertheme[footline=authortitle]{miniframes}
\usebackgroundtemplate{\includegraphics[height=\paperheight]{baggrund.jpg}}
\setbeamercolor{structure}{fg=white}
%\setbeamercolor{section in head/foot}{parent=structure}%, bg=black} %opt.1
\setbeamercolor{section in head/foot}{parent=structure,fg=white!70!black} %opt.2
%\setbeamercolor{section in head/foot}{parent=structure, bg=black} %opt.3
\setbeamercolor{normal text}{fg=white!80!blue}
\title{the title}
\author{John Doe}
\begin{document}

\section{S1}

\subsection{SS11}
\begin{frame}{Foo}
    Some text
\end{frame}
\begin{frame}{Bar}
    Some text
\end{frame}

\subsection{SS12}    
\begin{frame}{Baz}
    Some text
\end{frame}
\begin{frame}{Qux}
    Some text
\end{frame}

\section{S2}
\subsection{SS21}    
\begin{frame}{Buqz}
    Some text
\end{frame}

\subsection{SS22}
\begin{frame}{Bao}
    Some text
\end{frame}
\end{document}

答え1

ヘッダーの背景色を変更せずにミニフレームの色を変更するには、beamer カラーを使用できますmini frames(デフォルトでは、 から色を取得するだけなのでsection in head/foot、この色を変更するとミニフレームにも影響します)。

\setbeamercolor{mini frame}{fg=white,bg=black}

ただし、これでは問題の半分しか解決されません。ミニフレーム自体の色は正しいのですが、セクション名の色は次のように制御されるため、まだ間違っていますsection name in head/foot

見出しにはミニフレームが必要に応じてハイライト/網掛けされているが、セクション名は灰色のままである

これを修正するには、セクション名のヘッダー色の代わりにミニフレーム色を使用するように内部ビーマーコマンドにパッチを適用します。

\usepackage{etoolbox}
\patchcmd{\sectionentry}{\usebeamercolor[fg]{section in head/foot}}{\usebeamercolor[fg]{mini frame}}{}{}

これらを組み合わせると、望ましい結果が得られます。

ミニフレーム付きの見出しと、必要に応じてハイライト/網掛けされたセクション名

\documentclass[compress]{beamer}
\useoutertheme[footline=authortitle]{miniframes}
\usebackgroundtemplate{\includegraphics[height=\paperheight]{baggrund.jpg}}
\setbeamercolor{structure}{fg=white}
\setbeamercolor{normal text}{fg=white!80!blue}

\setbeamercolor{mini frame}{fg=white,bg=black}
\usepackage{etoolbox}
\patchcmd{\sectionentry}{\usebeamercolor[fg]{section in head/foot}}{\usebeamercolor[fg]{mini frame}}{}{}

\title{the title}
\author{John Doe}
\begin{document}

\section{S1}

\subsection{SS11}
\begin{frame}{Foo}
    Some text
\end{frame}
\begin{frame}{Bar}
    Some text
\end{frame}

\subsection{SS12}    
\begin{frame}{Baz}
    Some text
\end{frame}
\begin{frame}{Qux}
    Some text
\end{frame}

\section{S2}
\subsection{SS21}    
\begin{frame}{Buqz}
    Some text
\end{frame}

\subsection{SS22}
\begin{frame}{Bao}
    Some text
\end{frame}
\end{document}

関連情報