投影仪中科学图形的缩放效果

投影仪中科学图形的缩放效果

我通常不喜欢科学演示中的动画,但在这里我想问如何实现动画。

我有两个图,第二个图(下图 B)是第一个图(下图 A)的特写版本。我使用列环境和幻灯片编号实现了这一点:

\documentclass{beamer}

\usetheme{boxes}

\usepackage[export]{adjustbox}

\usepackage{tikz}
\usetikzlibrary{shapes,arrows,positioning}
\usetikzlibrary{decorations.pathreplacing,angles,quotes,decorations.pathmorphing}

\begin{document}

\begin{frame}{Hello}
    \framesubtitle{I like trains}
    \begin{columns}
        \column{0.5\linewidth}
            \centering
            \begin{tikzpicture}
                \onslide<1->{
                    \draw[<->] (-0.8,0) -- (0.8,0);
                }
            \end{tikzpicture}
        \column{0.5\linewidth}
            \includegraphics<1>[width=\textwidth]{example-image-a}
            \includegraphics<2>[width=\textwidth]{example-image-b}
    \end{columns}
\end{frame}

\end{document}

现在,当我浏览演示时,这确实令人困惑,因为我们看到图 A,然后直接看到超特写版本的图 B,而不知道它显示的是 A 的哪一部分。理想情况下,我希望有一个简单的“缩放效果”。我认为最简单的选择是在图形 A 和 B 之间插入一些中间叠加层,然后让它们以一定的暂停时间相互过渡。但是我不知道如何在不点击所有叠加层的情况下实现这一点。任何关于此或其他实现的帮助都将不胜感激。

答案1

这段代码怎么样?

\documentclass{beamer}

\usetheme{boxes}

\usepackage[export]{adjustbox}

\usepackage{tikz,animate}
\usetikzlibrary{shapes,arrows,positioning}
\usetikzlibrary{decorations.pathreplacing,angles,quotes,decorations.pathmorphing}

\begin{document}

\begin{frame}{Hello}
\animate<2-51>
\newcount\mysize
\animatevalue<2-42>{\mysize}{12}{52}
\transduration<2-42>{0.4}
    \framesubtitle{I like it when it rains}
    \begin{columns}
        \column{0.5\linewidth}
            \centering
            \begin{tikzpicture}
                \onslide<1->{
                    \draw[<->] (-0.8,0) -- (0.8,0);
                }
            \end{tikzpicture}
        \column{0.5\linewidth}
        \begin{tikzpicture}
        \node at (0,0) {\includegraphics[width=6cm]{example-image-a}};
        \pause
        \node at (0,0) {\includegraphics[width=\the\mysize mm]{example-image-b}};
        \end{tikzpicture}
    \end{columns}
\end{frame}

\end{document}

这会产生一个投影仪动画,将第二张图片放大到第一张图片的中心,但是通过调整第二个节点的位置,您可以控制这个位置。

在此处输入图片描述

我应该提到,动画只有在满足某些要求时才有效。我使用 acroread 的全屏模式。(并且该\transduration<2-42>{0.4}命令允许您调整速度。)

答案2

这是 @marmot 答案的一个稍微修改的版本,结合了他的动画方法这个答案.这样就可以包含一个每个动画步骤中都有新的图形文件并且“缩放”包含在这些图形所显示的内容中(它们必须在外部创建)。 这是我在问题中最初想要表达的意思。

\documentclass{beamer}

\usetheme{boxes}

\usepackage[export]{adjustbox}

\usepackage{tikz,animate}
\usetikzlibrary{shapes,arrows,positioning}
\usetikzlibrary{decorations.pathreplacing,angles,quotes,decorations.pathmorphing}

\begin{document}

    \begin{frame}{Hello}
        \animate<2-9>
        \newcount\mysize
        %\animatevalue<2-42>{\mysize}{12}{52}
        \transduration<2-7>{0.4}
        \framesubtitle{I like it when it rains}
        \begin{columns}
            \column{0.5\linewidth}
            \centering
            \begin{tikzpicture}
            \onslide<1->{
                \draw[<->] (-0.8,0) -- (0.8,0);
            }
            \end{tikzpicture}
            \column{0.5\linewidth}
            \begin{tikzpicture}
            \node at (0,0) {\includegraphics[width=6cm]{example-image-a}};
            \foreach \x in {a,b,a,b,a,b}
            {
                \pause
                \node at (0,0) {\includegraphics[width=6cm]{example-image-\x}};
            }
            \end{tikzpicture}
        \end{columns}
    \end{frame}

\end{document}

相关内容