当我重述一个定理时,它表现正常。但是当我将其重述为 \hyperlink 的第二个选项时,上面会出现一行额外的内容。我该如何防止这种情况发生?
\documentclass{amsbook}
\usepackage{hyperref}
\usepackage{thmtools,thm-restate}
\declaretheorem{theorem}
\begin{document}
Some text
\hypertarget{minq:genre}{
\begin{restatable}{theorem}{Question}
Why did the chicken cross the road?
\end{restatable}
}
Some text
\Question*
Some text
\hyperlink{minq:genre}{\Question*}
\end{document}
答案1
你很幸运,它能正常工作。使用 pdflatex 和 lualatex 时,当你在垂直模式下开始和结束链接时,你的示例会出现致命错误。
基本上它不起作用:如果在错误的地方使用,链接的开始和结束会影响间距。你可以把重述的定理放在一个框里,但第二行看起来会很奇怪。所以如果你想要一个回到原文的链接,我建议使用明确的文本。没有必要使用\hypertarget
,定理已经有一个锚点,你可以用检索它\label
。
\documentclass{amsbook}
\usepackage{hyperref}
\usepackage{thmtools,thm-restate}
\declaretheorem{theorem}
\begin{document}
Some text
\begin{restatable}{theorem}{Question}\label{minq:genre}
Why did the chicken cross the road?\\ To get on the other side
\end{restatable}
Some text
\Question*
We restate Theorem \ref{minq:genre} from page \pageref{minq:genre}:
\hyperref[minq:genre]{\begin{minipage}[t]{\dimexpr\linewidth-\parindent}\Question*\end{minipage}}
\end{document}