在 LaTeX / XeLaTeX 中引用硬连线信息

在 LaTeX / XeLaTeX 中引用硬连线信息

在 LaTeX 中,如果我们将定理数、引理数等信息硬编码,并将这些数字包含在宏中,那么就可以引用该数字。例如,

Theorem \thnum{3.4}\label{thm3.4} ....theorem text goes here

如果我们引用的话,文本内部的其他地方\ref{thm3.4}

当文章的编号方案没有任何顺序时,就会出现这种情况。

答案1

在默认交叉引用方案下,存储引用所涉及的主要宏是\@currentlabel。因此,我们定义\thnum打印提供的数字,但也更新\@currentlabel

在此处输入图片描述

\documentclass{article}

\makeatletter
\newcommand{\thnum}[1]{#1\renewcommand{\@currentlabel}{#1}}
\makeatother

\begin{document}

Here is some regular text. We are interested in Theorem~\ref{thm3.4}:

\noindent
{\bfseries Theorem \thnum{3.4}\label{thm3.4}} \ldots theorem text goes here

\end{document}

如果你使用hyperref,以下的定义\thnum就足够了:

\makeatletter
\newcommand{\thnum}[1]{\phantomsection #1\renewcommand{\@currentlabel}{#1}}
\makeatother

相关内容