
\uncover
TikZ 노드의 텍스트 내부에서 사용할 수 없습니다 . 제가 하고 싶은 일은 다음과 같습니다.
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{tikzpicture}[node distance=2cm]
\node[align=center] (a) {test 1 \\ \uncover<2>{test 12345}};
\node[align=center,right of=a] (b) {test 2};
\path[->] (a) edge (b);
\end{tikzpicture}
\end{frame}
\end{document}
이는 다음과 같습니다: "! 패키지 tikz 오류: 이 경로를 포기하는 중입니다. 세미콜론을 잊으셨습니까?."
사용하면 \onslide
동일한 결과가 나타납니다. 을 사용하면 \only
작동하지만 두 번째 줄이 더 길기 때문에 노드가 확대되고 다른 모든 항목이 이동됩니다.
\only
왜 작동하지만 \uncover
또는 작동하지 않는지 이해하고 싶습니다. 그러나 대부분 노드 크기가 변경되는 것을 방지하는 간단한 방법(예: 노드 텍스트 내부에 \onslide
있는 것보다 더 간단함)이 있는지 알고 싶습니다 .minipage
답변1
또 다른 중괄호 세트가 필요합니다.
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{tikzpicture}[node distance=2cm]
\node[align=center] (a) {test 1 \\ {\uncover<2>{test 12345}}}; %wrapped \uncover into {}
\node[align=center,right of=a] (b) {test 2};
\path[->] (a) edge (b);
\end{tikzpicture}
\end{frame}
\end{document}
답변2
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{tikzpicture}[node distance=2cm]
\onslide<1>{%
\node[align=center] (a) {test 1 \\ \phantom{test 12345}};}
\onslide<2->{%
\node[align=center] (a) {test 1 \\ test 12345};}
\node[align=center,right of=a] (b) {test 2};
\path[->] (a) edge (b);
\end{tikzpicture}
\end{frame}
\end{document}