Beamer에서 오버레이 명령을 사용할 때 공간을 보존하는 방법은 무엇입니까?

Beamer에서 오버레이 명령을 사용할 때 공간을 보존하는 방법은 무엇입니까?

Beamer에서는 Overlay 명령을 사용하여 수학 공식의 표현식을 다른 표현식으로 대체할 때 공간을 보존하고 싶습니다. 예를 들어 슬라이드 번호 1에 다음 공식이 있는 경우:

\[
x+\mathrm{Trace}M=y.
\]

예를 들어 슬라이드 2에서 이전 간격이 여전히 동일하도록 "\mathrm{Trace}M"을 "z"로 바꾸고 싶습니다.

\[
x+      z        =y.
\]

답변1

한 가지 옵션:

\documentclass{beamer}
\usepackage{amssymb}

\newlength\mylen
\newlength\mylena
\newlength\mylenb

\newcommand\R{\mathbb{R}}
\newcommand\bL{bL}
\newcommand\Div{Div}

\newcommand\getmaxlength[2]{%
  \settowidth\mylen{#1}%
  \settowidth\mylena{#1}%
  \settowidth\mylenb{#2}%
  \ifdim\mylenb>\mylena\relax
    \setlength\mylen{\mylenb}
  \fi%  
 }
\newcommand\Replace[2]{%
  \getmaxlength{#1}{#2}%
  \makebox[\mylen][c]{#2}%
}

\begin{document}

\begin{frame}
\onslide<1,2>{
\[
x+
\only<1>{\mathrm{Trace}M}
\only<2>{\Replace{$\mathrm{Trace}M$}{$y$}}
=z
\]
}

\onslide<3,4>{
\[
x+
\only<3>{\Replace{$\mathrm{Trace}M$}{$y$}}
\only<4>{\Replace{$y$}{$\mathrm{Trace}M$}}
=z
\]
}

\onslide<5->{
Comme l'application d\'eterminant est diff\'erentiable et que sa diff\'erentielle en l'identit\'e est l'application trace, alors $p.p.\, y\in\R^3,\,$: 
\[
\only<5>{\mathrm{det}(D_y\Phi(t,y))}
\only<6->{\Replace{$\mathrm{det}(D_y\Phi(t,y))$}{$|J(t,y)|$}}=1+t\,\only<5>{\mathrm{Trace}(D_yV(y))}
\only<6->{\Replace{$\mathrm{Trace}(D_yV(y))$}{$\Div_y V(y)$}}
+t\,\epsilon_1(t,y),\,\epsilon_1(t)\xrightarrow{\bL^{\infty}}0.
\]
}
\end{frame}

\end{document}

여기에 이미지 설명을 입력하세요

주요 명령은

\Replace{<text1>}{<text2>},

조판하지만 에서 사용하는 공간을 예약합니다. 수학 모드의 표현식에서는 인수를 로 묶어야 합니다 $...$.

질문과 관련이 없지만 $$...$$LaTeX 문서에는 사용하지 마십시오. 대신 사용하십시오 \[...\]. 보다$$ ... $$보다 \[ ... \]를 선호하는 이유는 무엇입니까?.

관련 정보