我想为我的学生提供书籍格式的幻灯片,我使用beamerarticle
。在我的书籍格式中,frametitles
被转换为marginpars
。因为我用加泰罗尼亚语写作,所以所有英文单词都是\emph
-asized。
我知道框架标题中的\emph
或$
(数学环境) 必须带\protect
-ed,因此我使用\protect\emph{...}
。但是当标题转换为边距段落时,此格式不起作用。
接下来是一个不起作用的例子:
\documentclass{article}
\usepackage{beamerarticle}
\mode<article>{%
\setbeamertemplate{frametitle}{%
\marginpar{%
\if\insertframetitle\empty\relax
\else
\insertframetitle\newline%
\fi
\scriptsize\insertframesubtitle}}}
\begin{document}
\begin{frame}{\protect\emph{This title is a problem}}
%\begin{frame}{This title is not a problem}
Some text
\end{frame}
\end{document}
它停止并显示以下错误消息:
! Use of \@xmpar doesn't match its definition.
\beamer@ifnextcharospec #1#2->\def \reserved@a {
#1}\def \reserved@b {#2}\fut...
l.17
frametitle
如果注释掉文章的特殊格式或\emph
标题中不使用,问题就会消失。你能解释一下哪里出了问题吗?
答案1
\if\insertframetitle\empty\relax
应该
\ifx\insertframetitle\empty\relax
如果目的是测试 的定义是否\insertframetitle
与 的定义相同\empty
。进行此更改后,示例将正常运行。