Latex Beamer -Befehl zum Erstellen von Bildrutschen
Frage
Ich verwende den folgenden Beamer -Befehl
\newcommand{\imgslide}[2]{
{\setbeamertemplate{background canvas}{
\includegraphics [width=\paperwidth,height=\paperheight]{images/#1}}
\begin{frame}[plain]
\txtonimg{#2}
\end{frame}
}
}
Und ich bekomme wiederholt Fehler.
Der gleiche Inhalt, wenn man manuell geschrieben hat, funktioniert gut.
Und der im obige Befehl enthaltene Befehl lautet:
\newcommand{\txtonimg}[1]{
\begin{center}
\fcolorbox{red}{black}{
\textcolor{white}
{#1}
}
\end{center}
}
Der Fehler ist:
]
! Too many }'s.
\endframe ->\egroup
\begingroup \def \@currenvir {frame}
l.107 \end{frame}
Bei wiederholten Tests scheint mir alles gut zu sein.
Lösung
Beamer verwendet viel \catcode
-bezogene Tricks, und es ist wahrscheinlich, dass dies Ihre Probleme verursacht. Da ich Ihren Fehler ohne ein minimales Beispiel nicht reproduzieren kann, kann ich nur spekulieren (im Allgemeinen in Zukunft, wenn Sie die effizienteste Hilfe möchten, geben Sie eine Komplett Minimales Beispiel, das das Problem aufweist - Sie werden es dabei oft selbst eingrenzen, aber zumindest stellen Sie sicher, dass andere es treu reproduzieren können).
Versuchen Sie das Hinzufügen der fragile
Option zum Frame in Ihrer Definition, wie in
\begin{frame}[plain,fragile]
Ich bin mir nicht sicher, was die Kompromisse sind, aber das verursacht das frame
Umwelt, um sich eher wie eine normale Umgebung zu verhalten.