С pdflatex следующее
\documentclass{beamer}
\usepackage{hyperref}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{figure}
\hyperlink{bar}{
\begin{tikzpicture}
\filldraw (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}
}
\hyperlink{bar}{
\begin{tikzpicture}
\filldraw (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}
}\\
\begin{tikzpicture}
\filldraw (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}
\begin{tikzpicture}
\filldraw (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}
\end{figure}
\end{frame}
\end{document}
дает слайд, где интервал между гиперссылочными tikzpicture
средами (верхний ряд) больше, чем интервал между негиперссылочными tikzpicture
средами (нижний ряд). Тот же эффект можно увидеть при использовании eg \includegraphics
. Есть ли способ избавиться от этого интервала?
решение1
Окружение tikzpicture
по сути похоже на поле для букв/символов, поэтому отсутствие символа %
после a \end{tikzpicture}
приведет к появлению пробелов, а также \hyperlink{bar}{
к появлению ложных пробелов при переносе строки.
Если какой-либо из этих пробелов необходимо «убрать», вам придется разместить его %
после \hyperlink{bar}{
и после ссылок, а также после \end{tikzpicture}
несвязанных окружений, а также сказать \offinterlineskip
, что тогда четыре изображения будут смежными.
Посмотрите на разницу между обоими методами.
\documentclass{beamer}
\usepackage{hyperref}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{figure}
\hyperlink{bar}{%
\begin{tikzpicture}
\filldraw[blue] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}%
}
\hyperlink{bar}{%
\begin{tikzpicture}
\filldraw[red] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}%
}
\begin{tikzpicture}
\filldraw[yellow] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}
\begin{tikzpicture}
\filldraw[green] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}%
\end{figure}
\begin{figure}
\hyperlink{bar}{%
\begin{tikzpicture}
\filldraw[blue] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}%
}%
\hyperlink{bar}{%
\begin{tikzpicture}
\filldraw[red] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}%
}%
\offinterlineskip% Only within groups!!!
\begin{tikzpicture}
\filldraw[yellow] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}%
\begin{tikzpicture}
\filldraw[green] (0,0) -- (0,1) -- (1,1) -- (1,0) -- cycle;
\end{tikzpicture}%
\end{figure}
\end{frame}
\end{document}