缺少带有子前导选项的 Beamer 独立版的 \endgroup 错误

缺少带有子前导选项的 Beamer 独立版的 \endgroup 错误

我正在尝试使用 Martin Scharrer 的 niftystandalone包将 Beamer 动画放入独立文件中。这是一个最小示例,演示了我遇到的错误。subfile.tex我正在使用的子文件(创意命名为)是:

\documentclass[beamer]{standalone}

\usepackage{tikz}
\newcommand*{\mytext}{Hello world!}

\begin{document}%
\begin{standaloneframe}{Subfile}
  \begin{tikzpicture}
    \onslide<+->{\draw[red] (0,0) circle (3pt);}
    \onslide<+->{\draw[blue] (1,1) circle (3pt);}
    \onslide<+->{\draw[green] (2,0) circle (3pt);}
    \onslide<+->{\node at (1,2) {\mytext};}
  \end{tikzpicture}
\end{standaloneframe}%
\end{document}

该子文件本身可按预期进行编译。

mainfile.tex我正在使用的主要文件名为:

\documentclass{beamer}
\usepackage[subpreambles=true]{standalone}

%\usepackage{tikz}
%\newcommand*{\mytext}{Hello world!}

\begin{document}
\begin{frame}{Main file}
  \input{subfile.tex}
\end{frame}
\end{document}

当我尝试使用编译此主文件时pdflatex mainfile.tex,出现错误:

Runaway argument?
%\begin {standaloneframe}{Subfile}\begin {tikzpicture}\onslide <+->{\draw \ETC.
! File ended while scanning use of \sa@@endinput.

当我尝试第二次运行 时pdflatex mainfile.tex,这个失控参数错误消失了,但另一个错误取而代之: Extra}或 forget \endgroup。我X在提示符下使用以在错误发生后退出编译。后续运行pdflatex mainfile.tex继续出现此缺失\endgroup错误。

我注意到了一些事情:

  • 如果我删除该subpreambles=true选项并取消注释两行复制的前言(\usepackage{tikz}\newcommand*{\mytext}{Hello world!}),则这个修改后的主文件将按预期进行编译。

  • 但是,如果我保持选项subpreambles=true,但取消注释复制的两行前言,当我尝试编译时,我得到了同样的错误。这表明选项出了问题subpreambles=true

有人知道我在这里做错了什么吗?在下面的评论中,Martin Scharrer 提到多次编译运行对他有用。我不确定为什么我似乎无法让多次编译运行对我有用。

相关内容