점진적으로 열리는 슬라이드가 있습니다. 일반적으로 n개의 슬라이드가 있다고 가정해 보겠습니다. 그러나 "이제" 나는 슬라이드 1, 예를 들어 슬라이드 2에서 시작하지 않기로 결정했습니다. 여전히 n-1개의 슬라이드가 표시되어 있지만 LaTeX는 더 이상 레이블 정의를 찾을 수 없다고 결정합니다! 이 문제를 어떻게 해결합니까?
아래에 최소한의 예를 제공합니다. 슬라이드에 대한 인수로서뿐만 아니라 '일반적인 방법'으로 레이블을 정의할 수 있도록 모든 슬라이드를 복제했다는 점에 유의하십시오. 이는 단지 이것이 아무것도 변경되지 않는다는 것을 보여주기 위한 것입니다.
코드는 다음과 같습니다.
\documentclass{beamer}
\begin{document}
\begin{frame}<2->{Title of Slide 1}\label{LabelOfSlideOne}
Slide 1 has three subslides, opened one by one, normally. Here, however, we start at slide number 2!
\begin{itemize}[<+->]
\item 1
\item 2
\item 3
\end{itemize}
\end{frame}
\begin{frame}<2->[label=LabelOfSlideTwo]{Title of Slide 2}
Slide 2 is exactly as slide 1, we simply define the label differently.
\begin{itemize}[<+->]
\item 1
\item 2
\item 3
\end{itemize}
\end{frame}
\begin{frame}{Title of Slide 3}\label{LabelOfSlideThree}
Slide 3 has two subslides, we show them incrementally, as normal.
\begin{itemize}[<+->]
\item 1
\item 2
\end{itemize}
\end{frame}
\begin{frame}[label=LabelOfSlideFour]{Title of Slide 4}
Slide 4 is exactly as slide 3, we simply define the label differently.
\begin{itemize}[<+->]
\item 1
\item 2
\end{itemize}
\end{frame}
\begin{frame}{Slide 5: Test all the references!}
\begin{itemize}
\item This should show a 1: \ref{LabelOfSlideOne}
\item This should show a 2: \ref{LabelOfSlideTwo}
\item This should show a 3: \ref{LabelOfSlideThree}
\item This should show a 4: \ref{LabelOfSlideFour}
\end{itemize}
\end{frame}
\end{document}
결과는 다음과 같습니다.
이는 반면에보통레이블 정의는 완벽하게 작동하지만(마지막 두 슬라이드) 모든 슬라이드(처음 두 슬라이드)를 표시하지 않으면 작동하지 않습니다.
그럼... 이 문제를 어떻게 해결하나요?
답변1
문제를 피할 수 있는 몇 가지 방법이 있습니다.
특정 오버레이에 라벨을 지정할 수 있습니다. 예:
\label<2>{LabelOfSlideOne}
라벨의 특정 오버레이를 참조할 수 있습니다. 예:
\ref{LabelOfSlideTwo<2>}
\documentclass{beamer}
\begin{document}
\begin{frame}<2->{Title of Slide 1}\label<2>{LabelOfSlideOne}
Slide 1 has three subslides, opened one by one, normally. Here, however, we start at slide number 2!
\begin{itemize}[<+->]
\item 1
\item 2
\item 3
\end{itemize}
\end{frame}
\begin{frame}<2->[label=LabelOfSlideTwo]{Title of Slide 2}
Slide 2 is exactly as slide 1, we simply define the label differently.
\begin{itemize}[<+->]
\item 1
\item 2
\item 3
\end{itemize}
\end{frame}
\begin{frame}{Title of Slide 3}\label{LabelOfSlideThree}
Slide 3 has two subslides, we show them incrementally, as normal.
\begin{itemize}[<+->]
\item 1
\item 2
\end{itemize}
\end{frame}
\begin{frame}[label=LabelOfSlideFour]{Title of Slide 4}
Slide 4 is exactly as slide 3, we simply define the label differently.
\begin{itemize}[<+->]
\item 1
\item 2
\end{itemize}
\end{frame}
\begin{frame}{Slide 5: Test all the references!}
\begin{itemize}
\item This should show a 1: \ref{LabelOfSlideOne}
\item This should show a 2: \ref{LabelOfSlideTwo<2>}
\item This should show a 3: \ref{LabelOfSlideThree}
\item This should show a 4: \ref{LabelOfSlideFour}
\end{itemize}
\end{frame}
\end{document}