我在 LyX 下工作,但我的问题当然也针对 LaTeX。我想这样做:
\begin{overprint}
\only<1>{
Test in slide 1
}
\only<2-4>{
Test in slide 2 with items :
\begin{itemize}
\item<3-4> item 1
\item<4> item 2
\end{itemize}
}
\only<5>{
Test in slide 3
}
\end{overprint}
其中Test in slide 1
被 替换,Test in slide 2
其项目逐一显示,依此类推,Test in slide 3
替换所有项目。
在复杂的框架中,我需要使用自动幻灯片编号(<+->
)而不是静态序列号。我期望以下内容能够发挥作用:
\begin{overprint}
\only<+->{
Test in slide 1
}
\only<+--+(2)->{
Test in slide 2 with items :
\begin{itemize}
\item<+--+(1)-> item 1
\item<+-> item 2
\end{itemize}
}
\only<+->{
Test in slide 3
}
\end{overprint}
但它不能编译:
[1
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}]
! Missing = inserted for \ifnum.
<to be read again>
-
l.152 \end{frame}
I was expecting to see `<', `=', or `>'. Didn't.
! Missing number, treated as zero.
<to be read again>
>
l.152 \end{frame}
A number should have been here; I inserted `0'.
(If you can't figure out why I needed to see a number,
look up `weird error' in the index to The TeXbook.)
.....
如果我这样做:
\begin{overprint}
\only<+->{
Test in slide 1
}
\only<+->{
Test in slide 2 with items :
\begin{itemize}
\item<+-> item 1
\item<+-> item 2
\end{itemize}
}
\only<+->{
Test in slide 3
}
\end{overprint}
然后它可以编译,但行为不是预期的行为,幻灯片被一个接一个地添加,而不是替换前一个,就像我使用了\item
而不是overprint
和一样\only
。
请问我该怎么办?
由于文本代码难以阅读,因此以下是完整的 Lyx 代码的屏幕截图:
在此代码中,<+-+>
有一个奇怪的尝试,使其适用于幻灯片 1 和 2,但不能适用于第 3 张:
答案1
我想你很接近了。你有几个-
太过分了。可以找到一组非常好的解释这里。
\documentclass{beamer}
\begin{document}
\begin{frame}[t]
\frametitle{Absolute numbers}
\begin{overprint}
\only<1>{
Test in slide 1
}
\only<2-4>{
Test in slide 2 with items :
\begin{itemize}
\item<3-4> item 1
\item<4> item 2
\end{itemize}
}
\only<5>{
Test in slide 3
}
\end{overprint}
\end{frame}
\begin{frame}[t]
\frametitle{Relative numbers}
\begin{overprint}
\only<+>{
Test in slide 1
}
\only<+-+(2)>{
Test in slide 2 with items :
\begin{itemize}
\item<+-+(1)> item 1
\item<+> item 2
\end{itemize}
}
\only<+(2)>{
Test in slide 3
}
\end{overprint}
\end{frame}
\end{document}