参考文献を含むフレームは、スムーズバーの円形の進行状況バーに追加されません。

参考文献を含むフレームは、スムーズバーの円形の進行状況バーに追加されません。

私はWarsawテーマとsmoothbars外部テーマを使って作業しています。

プレゼンテーションの最後に、出版物のリストに使用するための参考文献のエントリを追加しています。ただし、これらのスライドは、円形の進行状況バー (これには技術的な名前がありますか?) に追加されませんsmoothbars

チェック中サブセクションのない Beamer ナビゲーション サークルですか?質問 サブセクションをいくつか追加すればうまくいくと思ったのですが、うまくいきませんでした。フレームに参考文献が含まれている場合\printbibliography(おそらく参考文献も含まれていると思います)、フレームはプログレスバーからスキップされるようです。また、これがこれと関係があるかどうかはわかりません。バグ

次の例を確認してください。サブセクションを追加すると、最初のフレームが表示されます。参考文献が含まれているフレームを除いて、サブセクションを含む 2 番目のサブセクションのフレームも表示されます。

\documentclass{beamer}

\begin{filecontents}{\jobname.bib}
@Book{test1,
  author    = {Goossens, Michel and Mittelbach,
               Frank and Samarin, Alexander},
  title     = {The LaTeX Companion},
  publisher = {Addison-Wesley},
  location  = {Reading, Mass.},
  year      = {1994},
}
\end{filecontents}

\useoutertheme[subsection=false]{smoothbars}
\usepackage{biblatex}
\bibliography{\jobname}


\begin{document}
\section{Section}
\subsection{Subsection}
\begin{frame}{test}
content...
\end{frame}

\section{Publications}
\subsection{Subsection}
\begin{frame}{in nav}
this frame is in navigation bar
\end{frame}

\subsection{References}
\begin{frame}
\nocite{*}
\printbibliography[heading=subbibliography]
\end{frame}

\subsection{Subsection}
\begin{frame}{in nav}
this frame is also in navigation bar, but the previous one isn't
\end{frame}

\end{document}

では、参考文献が記載されたスライドをsmoothbars/circle 進捗バーに表示するにはどうすればよいでしょうか?

答え1

解決策を簡単に説明すると、

\printbibliography[heading=none]

説明

biblatex-一部

biblatexどのドキュメント クラスがロードされているかをテストします。クラスはbeamer有効なオプションではないため、デフォルト設定のabx@classtypeが使用されます。これらの設定では、オプションはheading=subbibliography次の定義を表します。

\defbibheading{subbibliography}[\refname]{%
  \subsection*{#1}}

定義はファイル で行われますbiblatex.def。 の星印付きバージョンが使用されていることに注意することが重要です\subsection

beamer-一部

beamer構造化では、のようなコマンドは\subsection環境の外側に配置する必要がありますframe。 このようなコマンドを内部に配置するとframe、望ましくない副作用が発生します。 この場合、 コマンドは\subsection*内のエントリを削除しますsmoothbar

簡単な例でこれを説明します。

\documentclass{beamer}
\useoutertheme[subsection=false]{smoothbars}
\begin{document}
\section{Section}
\subsection*{Subsection}
\begin{frame}{test}
content...a
\end{frame}

\begin{frame}{test}
\subsection*{Subsection b}
content...b
\end{frame}
\end{document}

上記の説明に基づいて、\subsection*によって実行される を削除する必要があります。最も簡単な方法は、 が次のように定義されるheading=subbibliographyを使用することです。heading=none

\defbibheading{none}{}

関連情報