Перекрёстные ссылки в LaTeX: \label и \ref
Поставьте \label{key} сразу после того, на что хотите сослаться (после \section{...}, после \caption{...}, внутри формулы), и напишите \ref{key} там, где нужен его номер; Scissor LaTeX подставит номер при вёрстке.
Сначала метка, потом ссылка
Перекрёстная ссылка состоит из двух половин. \label{key} отмечает пронумерованный объект, а \ref{key} печатает его номер. Ключ может быть любым именем по вашему выбору; префиксы вроде sec:, fig:, tab: и eq: представляют собой привычку, которая делает ключи читаемыми, а не правило.
Ссылка на раздел и рисунок
\section{Results}
\label{sec:results}
\begin{figure}[h]
\centering
\begin{tikzpicture}
\draw (0,0) -- (1,0.8) -- (2,0.3) -- (3,1.1);
\end{tikzpicture}
\caption{Measured values.}
\label{fig:values}
\end{figure}
Section~\ref{sec:results} shows the values in Figure~\ref{fig:values}.~ между словом и ссылкой означает неразрывный пробел, поэтому «Figure» и его номер остаются на одной строке.
Куда ставить метку
Метка получает номер ближайшего пронумерованного объекта перед ней:
| Ссылка на | Где ставить \label | \ref печатает |
|---|---|---|
| Раздел | сразу после \section{...} (или \subsection, \chapter) | 2, 2.1 |
| Рисунок или таблицу | после \caption{...}, внутри плавающего объекта | 1 |
| Формулу | внутри equation или нумерованного align | 1 |
| Пункт списка | после \item в enumerate | 2, 2b |
| Теорему | внутри theorem, lemma и похожих окружений | 1 |
| Сноску | внутри текста \footnote{...} | 2 |
Формулы
\eqref{key} печатает номер формулы в скобках, как обычно и показывают номера формул. \ref{key} даёт номер без скобок.
\eqref и \ref для формулы
\begin{equation}
a^2 + b^2 = c^2
\label{eq:pythagoras}
\end{equation}
Equation~\eqref{eq:pythagoras} is famous; its number is \ref{eq:pythagoras}.В Scissor LaTeX блок align или gather получает один номер, а не по номеру на строку. Сохраняется только первая \label в блоке, поэтому ссылка на метку следующей строки печатает ??. Подробности см. на странице Формулы, выравнивание и нумерация.
Команды, добавляющие название: \autoref и \cref
\autoref (из hyperref) и \cref (из cleveref) печатают вид объекта вместе с его номером, поэтому писать «Figure» самому не нужно. \cref следует настройкам cleveref по умолчанию: строчные буквы и короткие названия («fig.», «eq.»), а \Cref в начале предложения даёт полное название с заглавной буквы.
\autoref, \cref и \Cref
\section{Method}
\label{sec:method}
\begin{equation}
y = 44x
\label{eq:line}
\end{equation}
\begin{table}[h]
\centering
\caption{Settings.}
\label{tab:settings}
\begin{tabular}{lr} Runs & 44 \\ \end{tabular}
\end{table}
\autoref{sec:method} uses \cref{tab:settings} and \cref{eq:line}.
\Cref{tab:settings} lists the runs.cleveref умеет также ссылаться сразу на несколько меток и на диапазон:
Списки и диапазоны с \cref
\begin{equation} a = 1 \label{eq:a} \end{equation}
\begin{equation} b = 2 \label{eq:b} \end{equation}
See \cref{eq:a,eq:b}, or \crefrange{eq:a}{eq:b}.Параметры пакета capitalise (или capitalize), noabbrev и nameinlink учитываются, как и \crefname и \Crefname в преамбуле.
Параметры cleveref и \crefname
\documentclass{article}
\usepackage{amsmath}
\usepackage[capitalise,noabbrev]{cleveref}
\crefname{table}{Tab.}{Tabs.}
\begin{document}
\begin{equation} E = mc^2 \label{eq:e} \end{equation}
\begin{table}[h]
\centering
\caption{Masses.}
\label{tab:m}
\begin{tabular}{l} 44 kg \\ \end{tabular}
\end{table}
\cref{eq:e} uses the mass in \cref{tab:m}.
\end{document}| Команда | В Scissor LaTeX | Примечания |
|---|---|---|
\ref{key} | Работает | Только номер. |
\eqref{key} | Работает | Номер в скобках. |
\pageref{key} | Работает | Номер страницы, на которой стоит метка. |
\autoref{key} | Частично | «Section 2», «Figure 1», «Table 1», «Theorem 1». Для формул печатает только номер, а не «Equation 1». |
\cref, \Cref | Работает | Одна или несколько меток; названия cleveref по умолчанию или ваши из \crefname. |
\crefrange, \cpageref, \namecref | Работает | Диапазон, страница или только название. |
\nameref{key} | Частично | Печатает номер, а не заголовок раздела. |
\vref{key} | Частично | Печатает номер без «on the next page». |
\hyperref[key]{text} | Работает | Печатает ваш текст как ссылку на метку. |
Страницы и отсутствующие метки
\pageref печатает страницу, на которой стоит метка. Ссылка на несуществующую метку печатает полужирные ??, как LaTeX до второго прогона, а вкладка «Проблемы» один раз перечисляет каждую отсутствующую метку: «References to labels that do not exist (shown as ??): sec:nowhere».
\pageref и отсутствующая метка
\section{Data}
\label{sec:data}
The data is described on page~\pageref{sec:data}.
This label does not exist: Section~\ref{sec:nowhere}.Вкладка «Проблемы»: References to labels that do not exist (shown as ??): sec:nowhere
Отличия от установленного TeX
О пакетах см. cleveref и hyperref; полные руководства находятся на CTAN: cleveref, hyperref.
Вопросы и ответы
Почему моя ссылка в LaTeX показывает ???
Метки не существует, или она написана иначе, чем в \ref. В Scissor LaTeX это может также означать, что метка вторая в блоке align, который получает только один номер.
Как сослаться на формулу в скобках?
Используйте \eqref{key} из amsmath. Она печатает номер в скобках, например (1).
Чем \ref отличается от \autoref?
\ref печатает только номер. \autoref добавляет вид объекта, например «Figure 1» или «Section 2», и вам не нужно набирать это слово самому.
Каждый пример на этой странице верстается в Scissor LaTeX при сборке сайта. Обновлено 2026-11-07.