beamer actionenv 和模式

beamer actionenv 和模式

在给定模式下,是否可以完全丢弃投影机环境?

在下面的 MWE 中,我希望第二个actionenv tikzpicture环境与另一列的项目居中,但actionenv即使它未在 beamer 模式下显示,也会从第一个环境添加一些垂直空间。我通过使用包装来解决这个问题trikzpicture\only<article>参见第二帧),但我不明白为什么需要这样做。

当然,我可以删除所有actionenv环境并只使用\only<article>宏,但由于某些原因(该文件是由org-mode导出创建的),我不能这样做。

\documentclass{beamer}

\usepackage{standalone,tikz}

\begin{document}

\begin{frame}
  \begin{columns}
    \begin{column}{.45\columnwidth}
      \begin{actionenv}<article>
        \begin{tikzpicture}
          \draw [very thick, red, ->] (0,0) -- (4,4);
        \end{tikzpicture}
      \end{actionenv}
      \begin{actionenv}<presentation>
        \begin{tikzpicture}
          \draw [very thick, red, ->] (0,0) -- (4,4);
        \end{tikzpicture}
      \end{actionenv}
    \end{column}
    \begin{column}{.45\columnwidth}
      \begin{itemize}
      \item 1st item
      \item 2nd item
      \item 3rd item
      \end{itemize}
    \end{column}

  \end{columns}
\end{frame}


\begin{frame}
  \begin{columns}
    \begin{column}{.45\columnwidth}
      \begin{actionenv}<article>
        \only<article>{
          \begin{tikzpicture}
            \draw [very thick, red, ->] (0,0) -- (4,4);
          \end{tikzpicture}
        }
      \end{actionenv}
      \begin{actionenv}<presentation>
        \only<presentation>{
          \begin{tikzpicture}
            \draw [very thick, red, ->] (0,0) -- (4,4);
          \end{tikzpicture}
      }
      \end{actionenv}
    \end{column}
    \begin{column}{.45\columnwidth}
      \begin{itemize}
      \item 1st item
      \item 2nd item
      \item 3rd item
      \end{itemize}
    \end{column}

  \end{columns}
\end{frame}

\end{document}

在此处输入图片描述

答案1

这对于环境来说似乎是一个很好的例子onlyenv

\documentclass{beamer}

\usepackage{standalone,tikz}

\begin{document}

\begin{frame}
  \begin{columns}
    \begin{column}{.45\columnwidth}
      \begin{onlyenv}<article>
        \begin{tikzpicture}
          \draw [very thick, red, ->] (0,0) -- (4,4);
        \end{tikzpicture}
      \end{onlyenv}
      \begin{onlyenv}<presentation>
        \begin{tikzpicture}
          \draw [very thick, red, ->] (0,0) -- (4,4);
        \end{tikzpicture}
      \end{onlyenv}
    \end{column}
    \begin{column}{.45\columnwidth}
      \begin{itemize}
      \item 1st item
      \item 2nd item
      \item 3rd item
      \end{itemize}
    \end{column}

  \end{columns}
\end{frame}

\end{document}

在此处输入图片描述

相关内容