使用 beamer 时部分标题加粗字体有误

使用 beamer 时部分标题加粗字体有误

beamer当我使用(v3.13) 类编译 LaTeX 文档并在标题部分使用粗体形状时出现错误:

\documentclass{beamer}

\begin{document}

\section{The \textbf{Section} Title}

\begin{frame}{Testing frame}
  This is a test.
\end{frame}

\end{document}

使用 pdflatex 编译出现错误:

! Argument of \@gobble has an extra }.
<inserted text> 
                \par 
l.5     \section{The \textbf{Section} Title}

使用其他字体变体(例如倾斜和斜体)时会发生错误。

\emph部分标题中使用的命令也出现错误:

! Undefined control sequence.
\beamer@sort #1#2->\long \def \beamer@todo 
                                           {#1}\def \beamer@ospec {}\beamer@...
l.5     \section{The \emph{Section} Title}

这些是已知错误吗?还是我遗漏了什么?有修复方法吗?

答案1

您将需要\protect分段使用这些命令

\documentclass{beamer}

\begin{document}

\section{The \protect\textbf{Section} Title}

\begin{frame}{Testing frame}
  This is a test.
\end{frame}

\end{document}

这是开发时做出的一些设计决策的潜在问题beamer。遗憾的是,具有覆盖功能的命令没有设置为“稳健”,并且不清楚如何在不破坏现有beamer行为的情况下解决这个问题。

答案2

注意beamer在使命令覆盖感知方面做了大量的工作。这样做的一个缺点是一些标准命令变得脆弱。您可以使用\bfseries字体开关(默认情况下是\protected)替代方案:

\documentclass{beamer}% http://ctan.org/pkg/beamer

\begin{document}

\section{The {\bfseries Section} Title}

\begin{frame}{Testing frame}
  This is a test.
\end{frame}

\end{document}​

相关内容