在数学文章中,人们通常用乳胶写一个定理(或命题或推论):
\begin{theorem} \label{theorem1}
....
\end{theorem}
现在我可以使用 \ref{theorem1} 在文章中引用此定理。例如,我可以说:
In \ref{theorem1} we saw that .....
在文章中这将显示为(当定理的编号(假设)为 1.6 时)。
In 1.6 we saw that ....
问题:我怎样修改命令 \ref{theorem1} 以便在文本中我们看到“定理 1.6”而不是仅仅“1.6”(或者命题或推论而不是定理)?
所以输出应该是
In Theorem 1.6 we saw that ....
当然,我可以在“\ref{theorem1}”之前写上“定理”,但我想知道是否有一种自动的方法可以在数字 1.6 之前写上定理(或命题或推论)。
答案1
您有两个主要选择:
如果同时加载hyperref
和cleveref
,则hyperref
必须先加载。
有关提供各种交叉引用功能的软件包的更多信息,请参阅帖子交叉引用包:使用哪一个,哪些有冲突?
一个基本的MWE(最小工作示例):
\documentclass{article} % pick a suitable document class
\usepackage{amsthm} % or 'ntheorem'
\usepackage[colorlinks,allcolors=blue]{hyperref}
\usepackage[nameinlink,capitalize]{cleveref}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem} \label{theorem1} \dots \end{theorem}
With \verb+\autoref+: \autoref{theorem1}
With \verb+\cref+: \cref{theorem1}
\end{document}