
Я хочу разместить текст на beamer
слайде рядом с рисунком. Проблема в том, что если я просто использую tikzpicture
окружение, LaTeX размещает текстпослевсе, что размещено перед этим, будь то скрыто или показано. Как мне указать tikz
использовать координаты страницы и не считать все, что он считает от текущей позиции?
Редактировать: Минимальный рабочий пример. Видимо, это как-то связано с моим выбором колонок.
\documentclass[bigger]{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{columns}
\begin{column}{0.6\textwidth}
\only <1>{
\begin{tikzpicture}
\node at (0,0) {a};
\end{tikzpicture}
}
\only <2>{
\begin{tikzpicture}
\node at (0,0) {b};
\end{tikzpicture}
}
\only <3>{
\begin{tikzpicture}
\node at (0,0) {c};
\end{tikzpicture}
}
\end{column}
\end{columns}
\end{frame}
\end{document}
Когда я компилирую это, «a», «b» и «c» не появляются в одном и том же месте, а идут друг за другом.
решение1
Ваш текст содержит пробелы, которые находятся за пределами области действия команд \only
, а именно, новые строки после последней скобки \only{...}
. Чтобы удалить их, вам нужно добавить последний %
знак:
\only<1>{...
...}%
Ваш полный код будет выглядеть примерно так:
\documentclass[bigger]{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{columns}
\begin{column}{0.6\textwidth}
\only <1>{
\begin{tikzpicture}
\node at (0,0) {a};
\end{tikzpicture}
}%
\only <2>{
\begin{tikzpicture}
\node at (0,0) {b};
\end{tikzpicture}
}%
\only <3>{
\begin{tikzpicture}
\node at (0,0) {c};
\end{tikzpicture}
}
\end{column}
\end{columns}
\end{frame}
\end{document}