Domanda

Sto usando il seguente comando beamer

\newcommand{\imgslide}[2]{
        {\setbeamertemplate{background canvas}{
        \includegraphics [width=\paperwidth,height=\paperheight]{images/#1}} 
            \begin{frame}[plain]
                \txtonimg{#2}
            \end{frame}
        }
}

E ricevo ripetutamente errori.

Lo stesso contenuto quando scritto manualmente funziona bene.

E il comando incluso nel comando sopra è:

\newcommand{\txtonimg}[1]{
\begin{center}
 \fcolorbox{red}{black}{
 \textcolor{white}
 {#1}
 }
 \end{center}
 }

L'errore è:

]
! Too many }'s.
\endframe ->\egroup 
            \begingroup \def \@currenvir {frame}
l.107       \end{frame}

Tutto mi sembra buono, durante i test ripetuti.

È stato utile?

Soluzione

Beamer usa una buona dose di \catcode-Caccino correlato, ed è probabile che questo sia ciò che sta causando i tuoi problemi. Dato che non riesco a riprodurre il tuo errore senza un esempio minimo, posso solo speculare (in generale in futuro se si desidera l'aiuto più efficiente, fornire un completare Esempio minimo che mostra il problema - nel farlo spesso lo restringerai, ma almeno ti assicuri che gli altri possano riprodurlo fedelmente).

Prova ad aggiungere il fragile opzione al frame nella tua definizione, come in

\begin{frame}[plain,fragile]

Non sono sicuro di quali siano i compromessi, ma questo causa il frame ambiente per comportarsi più come un ambiente normale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top