我怎样才能使 textpos 尊重 beamer 覆盖?

我怎样才能使 textpos 尊重 beamer 覆盖?

我使用textpos来将文本块放置在beamer框架中。但是,textblock环境似乎不遵守叠加命令。在下面的示例中,我希望“更多文本”在第一张幻灯片上不可见,在第二张幻灯片上可见。但是,当我编译文档时,它在两张幻灯片上都可见。我怎样才能使它在第一张幻灯片上不可见?

\documentclass{beamer}

\usepackage[overlay,absolute]{textpos}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}

\begin{document}

\begin{frame}
Some text

  \visible<2->{
        \begin{textblock}{5}(6,6)
            Some more text
        \end{textblock}
          }
\end{frame}

\end{document}

编辑:到目前为止给出的两个答案都非常有用,我不确定该接受哪一个。一方面,Cyber​​Singularity 的答案允许我使用textblock单个覆盖命令使用多个环境,而 Paul Gaborit 的答案则要求每个环境使用不同的覆盖命令textblock。另一方面,Paul Gaborit 的答案允许我使用命令\visible。我更喜欢\visible\only因为正如 cyberSingularity 指出的那样,\visible它保留了所需的空间量。

答案1

如果您使用\only而不是,它会按预期工作\visible

\documentclass{beamer}

\usepackage[overlay,absolute]{textpos}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}

\begin{document}

\begin{frame}
Some text

  \only<2->{
        \begin{textblock}{5}(6,6)
            Some more text
        \end{textblock}
          }
\end{frame}

\end{document}

答案2

\visible如果你调用你的textpos环境,它会按预期工作:

\documentclass{beamer}

\usepackage[overlay,absolute]{textpos}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}

\begin{document}

\begin{frame}
  Some text

  \begin{textblock}{5}(6,6)
    \visible<2->{
      Some more text
    }
  \end{textblock}
\end{frame}

\end{document}

相关内容