\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}
上記のコードは Marmot のアイデアから盗用したものです。
編集
と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
これは 2 つの問題の組み合わせです:
環境のとは同じオーバーレイ上になければなりませ
\begin{}
ん\end{}
multiline
<+->
コードを 2 回処理します。これを の使用と組み合わせると、必要以上に 2 倍のオーバーレイが作成されるため、問題が発生します。
次の回避策を提案します。
\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}