
Я пишу некоторые уравнения в бимере и хочу указать на эти уравнения с помощью гиперссылки, но ссылка, созданная командой hyperref[label]{text}
в пакете, hyperref
не указывает на нужное место, в то время как \ref
команда указывает на нужное место. Например
\documentclass{beamer}
\hypersetup{
colorlinks,
linkcolor=red,
}
\begin{document}
\begin{frame}[c]\frametitle{page 1}
\begin{equation}\label{eq:1}
123
\end{equation}
\end{frame}
\begin{frame}[c]\frametitle{page 2}
\begin{equation}\label{eq:2}
456
\end{equation}
\end{frame}
\begin{frame}[c]\frametitle{page 3}
Right link, will point to page 2:\ref{eq:2}\par
Wrong link, doesn't point to page 2:\hyperref[eq:2]{The equation 2}\par
\end{frame}
\end{document}
Я использую xelatex
в качестве компилятора и платформы TL2016 и Windows 7.
решение1
Вместо \hyperref[]{}
использования \hyperlink{}{}
-- \hyperlink
переопределяется на beamer
использование обычного \ref
внутреннего значения, поскольку эта команда по умолчанию использует ссылки (с hyperref
), и ссылка будет работать, но она не будет работать в другом документе, настроенном с другим классом документа, поскольку \hyperlink
применяет имя якоря, а не имя метки.
Также обратите внимание, что \hyperlink
поддерживается <>
синтаксис наложения слайдов beamer
.
\documentclass{beamer}
\hypersetup{
colorlinks,
linkcolor=red,
}
\begin{document}
\begin{frame}[c]\frametitle{page 1}
\begin{equation}\label{eq:1}
123
\end{equation}
\end{frame}
\begin{frame}[c]\frametitle{page 2}
\begin{equation}\label{eq:2}
456
\end{equation}
\end{frame}
\begin{frame}[c]\frametitle{page 3}
Right link, will point to page 2:\ref{eq:2}
Correct link, does point to page 2:\hyperlink{eq:2}{The equation 2} as well!
\end{frame}
\end{document}