為了實現動態效果,例如列表逐個顯示,beamer採用了疊層的方式。大概的意思就是實際上生成了多頁pdf,當後一頁把前一頁覆蓋後,就形成了動態效果。例如下面的代碼,
可以看出,一共生成了四頁pdf。第一頁只有一項列表,然後主次增加。特別要注意的是頁碼和其它內容並沒有發生變化。這實際上就是beamer實現動態播放,逐次播放的方法。
如果仔細觀察代碼,就會發現在每一個item後面,都會有一個被<>包圍的數字和符號。這裡的含義通過以下的例子說明。
只有數字的情況
documentclass[compress]{beamer}
usetheme{AnnArbor}
usecolortheme{dove}
egin{document}
egin{frame}
egin{itemize}
item<1> First point, shown on all slides.
item<2> Second point, shown on slide 2 and later.
end{itemize}
end{frame}
end{document}
比較上面的item後的數字,我們會看到,數字1控制該列表項顯示在第一頁面上,數字2表示第二項顯示在第二頁上。所以我們也可以通過這些數字任意指定這些選項出現在的頁面。注意這裡的頁面並非pdf的實際上的頁說。只是表明當前幀被分成了若干頁來實現動態效果。
「-」在前
documentclass[compress]{beamer}
usetheme{AnnArbor}
usecolortheme{dove}
egin{document}
egin{frame}
egin{itemize}
item<-1> First point, shown on all slides.
item<-2> Second point, shown on slide 2 and later.
item<-3> Third point, also shown on slide 2 and later.
end{itemize}
end{frame}
end{document}
同樣,通過比較可以發現「-n」的含義是在第n頁(包括第n頁)之前均顯示在頁面上。因此我們可以看出這三項逐次減少。
「-」在後
如果理解了第二種情況,那麼"n-"的含義自然就非常明確了,它的意思是出現在第n頁以及第頁之後均出現,例子如下。
documentclass[compress]{beamer}
usetheme{AnnArbor}
usecolortheme{dove}
egin{document}
egin{frame}
egin{itemize}
item<1-> First point, shown on all slides.
item<2-> Second point, shown on slide 2 and later.
end{itemize}
end{frame}
end{document}
用逗號隔開的多個數字
當然實際上我們也可以指定當前列表可以在哪些頁面顯示,用逗號隔開這些數字即可,例子如下。
documentclass[compress]{beamer}
usepackage[UTF8,hyperref]{ctex}
usetheme{AnnArbor}
usecolortheme{dove}
egin{document}
egin{frame}
egin{itemize}
item<1,3> 該條顯示在第一和第三頁,第二頁不出現。
item<2,4> 這一條顯示在第二頁和第四頁。
end{itemize}
end{frame}
end{document}
在其它環境下使用疊層的方式實現動態效果
除了我們看到在列表環境中可以利用疊層實現動態變化,在其它Latex內置的環境中也可以使用。比方: extbf、 extit、 extsl、 extrm、 extsf、color、alert、structure。此外在beamer內置的環境中,也可以用例如theorem,example等。
如下面的代碼,可以逐次顯示theorem,proof和example。
documentclass[compress]{beamer}
usepackage[UTF8,hyperref]{ctex}
usetheme{AnnArbor}
usecolortheme{dove}
egin{document}
egin{frame}
frametitle{A Theorem on Infinite Sets}
egin{theorem}<1->
There exists an infinite set.
end{theorem}
egin{proof}<3->
This follows from the axiom of infinity.
end{proof}
egin{example}<2->
The set of natural numbers is infinite.
end{example}
end{frame}
end{document}
其它用來控制動態顯示的命令
在beamer內,定義了多個控制內容動態顯示的命令,包括only、alt、visible、uncover、invisible 。這些也可以控制相應的內容以特定的方式顯示。具體請參考手冊
http://www.latexstudio.net/wp-content/uploads/2017/02/BeamerUserGuide_V3.24_zh-cn.pdf ?
www.latexstudio.net
中第九章的內容。這篇文章中大部分例子來源於上面的連接。
推薦閱讀: