5 使用了\only命令,为什么出现了两页重复的内容?

发布于 2022-10-31 23:11:16

问题描述:使用了only命令,为什么出现了两页重复的内容?如图:
chongfu.png

MWE代码如下

\documentclass[12pt]{ctexbeamer}

\begin{document}
    \begin{frame}
        \begin{itemize}
            \item 测试  \pause
            \item \only<+>{\underline{\phantom{\LaTeX}}}\only<+->{\underline{\LaTeX}} 是最好用的排版工具 \pause
            \item \only<+>{\underline{\phantom{PHP}}}\only<+->{\underline{PHP}}是世界上最好的编程语言
          \end{itemize}
          \pause
    为什么出现了两页重复的内容?
    \end{frame}
\end{document}

查看更多

关注者
0
被浏览
1.3k
Swit
Swit 2022-11-01
LaTeX nubility!

这个和计数器 beamerpauses 有关系。先给出一个解决方案:

\documentclass[12pt]{ctexbeamer}

\begin{document}

\begin{frame}
  \begin{itemize}[<+->]
    \item 测试
    \item \only<.>{\underline{\phantom{\LaTeX}}}
          \only<+->{\underline{\LaTeX}} 是最好用的排版工具
    \item \only<.>{\underline{\phantom{PHP}}}
          \only<+->{\underline{PHP}} 是世界上最好的编程语言
  \end{itemize}
\end{frame}

\end{document}

然后我们分析一下该问题的原因:
根据 beamer 手册 9.6.4 小节的讲解,我们知道计数器 beamerpauses 在遇到 +\pause 会自增。所以第一个 \only<+> 会被替换为 \only<2>,第二个 \only<+-> 会被替换为 \only<3->,而第二个 \only 和第三个之间有一个 \pause,所以第三个 \only<+> 会被替换为 \only<5>。这样一来,\underline{\LaTeX}是最好的排版语言 就会在第四帧中重复一次。

1 个回答

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览