Бимер - `раскрыть` в `только`

Бимер - `раскрыть` в `только`

Я вложил uncoverвнутрь onlyи это не работает так, как ожидалось. Заголовок моего документа:

\documentclass[8pt]{beamer}

\mode<presentation>{\usetheme{Warsaw}}
\setbeamertemplate{navigation symbols}{}

\usepackage{empheq}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows,backgrounds}

А рассматриваемый кадр следующий:

\begin{frame}[label=review]
\frametitle{A review of the steps}
\setbeamercovered{transparent}
\begin{columns}
\column{0.4\linewidth}
\begin{enumerate}[<+->]
\item \alert<1>{Supernova detection.}
\item \alert<2>{Spectroscopic confirmation.}
\item \alert<3,6>{Multi-band photometry.}
\item \alert<4,6>{Parameter extraction.}
\item \alert<5,6>{Hubble diagram fit.}
\end{enumerate}
\column{0.7\linewidth}
\begin{center}
  \begin{tikzpicture}%[show background grid]
    \node[anchor=south west,inner sep=0] (step1) at (0,0) {\includegraphics[width=0.18\linewidth]{figures/pedagogy/03D4ag-zoom1.png}};
    \begin{scope}[x={(step1.south east)},y={(step1.north west)}]
      \draw<1>[red] (0,0) rectangle (1,1);
    \end{scope}
  \end{tikzpicture}
  \begin{tikzpicture}%[show background grid]
    \node[anchor=south west,inner sep=0] (step2) at (0,0) {\includegraphics[width=0.18\linewidth]{figures/guypres/1994D_spectrum.pdf}};
    \begin{scope}[x={(step2.south east)},y={(step2.north west)}]
      \draw<2>[red] (0,0) rectangle (1,1);
    \end{scope}
  \end{tikzpicture}
  \begin{tikzpicture}%[show background grid]
    \node[anchor=south west,inner sep=0] (step3) at (0,0) {\includegraphics[width=0.18\linewidth]{figures/03D4ag-lc.png}};
    \begin{scope}[x={(step3.south east)},y={(step3.north west)}]
      \draw<3>[red] (0,0) rectangle (1,1);
    \end{scope}
  \end{tikzpicture}
  \begin{tikzpicture}%[show background grid]
    \node[anchor=south west,inner sep=0] (step4) at (0,0) {\includegraphics[width=0.18\linewidth]{figures/03D4ag-lc-model.png}};
    \begin{scope}[x={(step4.south east)},y={(step4.north west)}]
      \draw<4>[red] (0,0) rectangle (1,1);
    \end{scope}
  \end{tikzpicture}
  \begin{tikzpicture}%[show background grid]
    \node[anchor=south west,inner sep=0] (step5) at (0,0) {\includegraphics[width=0.18\linewidth]{figures/pedagogy/hubblediagram.png}};
    \begin{scope}[x={(step5.south east)},y={(step5.north west)}]
      \draw<5>[red] (0,0) rectangle (1,1);
    \end{scope}
  \end{tikzpicture}
\end{center}
\end{columns}

\begin{overlayarea}{\textwidth}{\textheight}
\only<1>{
  \begin{center}
    \includegraphics[width=0.4\textwidth]{figures/pedagogy/03D4ag-zoom1.png}
    \hspace{0.2cm}
    \includegraphics[width=0.4\textwidth]{figures/pedagogy/03D4ag-zoom3.png}
  \end{center}
}
\only<2>{
  \begin{center}
    \includegraphics[width=0.7\textwidth]{figures/guypres/1994D_spectrum.pdf}
  \end{center}
}
\only<3-4>{
  \begin{center}
    \includegraphics[width=0.4\textwidth]{figures/03D4ag-lc.png}
    \hspace{0.2cm}
    \uncover<4>{
      \includegraphics[width=0.4\textwidth]{figures/03D4ag-lc-model.png}
    }
  \end{center}
}
\only<5>{
  \begin{center}
    \includegraphics[width=0.7\textwidth]{figures/pedagogy/hubblediagram.png}
  \end{center}
}
\end{overlayarea}

\end{frame}

Поведение, которое я ожидаю, заключается в том, что 03D4ag-lc.png будет отображаться на слайде 3, а 03D4ag-lc-model.png появится на слайде 4, не вытесняя 03D4ag-lc.png. Вместо этого 03D4ag-lc-model.png, похоже, полностью игнорирует команду uncoverи присутствует на обоих слайдах. Это нормально? Если да, то как правильно выполнить то, к чему я стремлюсь?

решение1

В вашем коде вы устанавливаете эффект скрытия transparentчерез \setbeamercovered{transparent}макрос.

Как отмечает @JosephWright, прозрачность не работает для импортированных изображений, поэтому вы вообще не получили эффекта покрытия, когда попытались раскрыть импортированное изображение с помощью:

\uncover<4>{
  \includegraphics[width=0.4\textwidth]{figures/03D4ag-lc-model.png}
}

Чтобы скрыть изображения, вам нужно сбросить эффект прозрачности с помощью

\setbeamercovered{invisible}

Я предложил поместить спецификацию внутрь overlayarea, чтобы она не переопределяла первую настройку в остальной части рамы.

Вы также можете проверить раздел 17.6 руководства по эксплуатации Beamer.

Связанный контент