Как использовать \visible
, когда его содержимое заключено в , multlined
который в свою очередь содержит вложенные \visible
?
МВЭ
Следующий MWE не компилируется из-за multlined
.
\documentclass[12pt,beamer,preview,multi={math},border=12pt]{standalone}
\usefonttheme[onlymath]{serif}
\usepackage{mathtools}
\newcommand{\foo}[1]{\visible<+->{#1}}
\begin{document}
\begin{standaloneframe}
\begin{math}
\displaystyle
\begin{aligned}
\foo{\int_a^b}\foo{f(x)}\foo{\, \mathrm{d}x}
\foo{&=}\foo{F(b)}\foo{-F(a)}\\
\foo{&=}\foo{\cos a}\foo{\sin b}\foo{+}\foo{\sin a }\foo{\cos b}\\
\foo{&=}
\foo{\begin{multlined}[t]}
\foo{ax^4}\foo{+bx^3}\\\foo{+cx^2}\foo{+dx}\foo{+e}\\
\foo{\end{multlined}}
\end{aligned}
\end{math}
\end{standaloneframe}
\end{document}
Приведенный выше код был украден из идеи Мармота.
Редактировать
Если я удалил foo
для обоих \begin{multlined}
и \end{multlined}
, я получил пустые кадры, как вы можете видеть из следующей анимации. Некоторые задержки представляют пустые кадры.
\documentclass[12pt,beamer,preview,multi={math},border=12pt]{standalone}
\usefonttheme[onlymath]{serif}
\usepackage{mathtools}
\newcommand{\foo}[1]{\visible<+->{#1}}
\begin{document}
\begin{standaloneframe}
\begin{math}
\displaystyle
\begin{aligned}
\foo{\int_a^b}\foo{f(x)}\foo{\, \mathrm{d}x}
\foo{&=}\foo{F(b)}\foo{-F(a)}\\
\foo{&=}\foo{\cos a}\foo{\sin b}\foo{+}\foo{\sin a }\foo{\cos b}\\
\foo{&=}
\begin{multlined}[t]
\foo{ax^4}\foo{+bx^3}\\\foo{+cx^2}\foo{+dx}\foo{+e}\\
\end{multlined}
\end{aligned}
\end{math}
\end{standaloneframe}
\end{document}
решение1
Это сочетание двух проблем:
\begin{}
и среды\end{}
должны находиться на одном и том же слоеmultiline
обрабатывает код дважды. Это проблема, если вы совмещаете это с использованием ,<+->
поскольку создается вдвое больше наложений, чем необходимо.
Я предлагаю следующий обходной путь:
\documentclass[12pt,beamer,preview,multi={math},border=12pt]{standalone}
\usefonttheme[onlymath]{serif}
\usepackage{mathtools}
\newcommand{\foo}[1]{\visible<+->{#1}}
\begin{document}
\begin{standaloneframe}
\begin{math}
\displaystyle
\begin{aligned}
\foo{\int_a^b}\foo{f(x)}\foo{\, \mathrm{d}x}
\foo{=&}\foo{F(b)}\foo{-F(a)}\\
\foo{=&}\foo{\cos a}\foo{\sin b}\foo{+}\foo{\sin a }\foo{\cos b}\\
\foo{=& }
\foo{ ax^4}\foo{+bx^3}\\
\foo{&+cx^2}\foo{+dx}\foo{+e}\\
\end{aligned}
\end{math}
\end{standaloneframe}
\end{document}