LaTeX 不执行 \ref 和 \label 命令

LaTeX 不执行 \ref 和 \label 命令

代码:

\documentclass[a4paper,12pt]{article} % добавить leqno в [] для нумерации слева

%%% Работа с русским языком
\usepackage{cmap}                   % поиск в PDF
\usepackage{mathtext}               % русские буквы в формулах
\usepackage[T2A]{fontenc}           % кодировка
\usepackage[utf8]{inputenc}         % кодировка исходного текста
\usepackage[english,russian]{babel} % локализация и переносы
%%% Дополнительная работа с математикой
\usepackage{amsmath,amsfonts,amssymb,amsthm,mathtools} % AMS
\usepackage{icomma} % "Умная" запятая: $0,2$ --- число, $0, 2$ --- перечисление
\usepackage[russian]{babel}
%% Номера формул
\mathtoolsset{showonlyrefs=true} % Показывать номера только у тех формул, на которые есть \eqref{} в тексте.
\DeclareMathOperator{\bjbjb}{tg}
%% Шрифты
\usepackage{euscript}    % Шрифт Евклид
\usepackage{mathrsfs} % Красивый матшрифт

%% Номера формул
\mathtoolsset{showonlyrefs=true} % Показывать номера только у тех формул, на которые есть \eqref{} в тексте.
\newcommand{\lra}{\Leftrightarrow}
\newcommand{\ua}{\Uparrow}
\newcommand{\da}{\Downarrow}

%% Шрифты
\usepackage{euscript}    % Шрифт Евклид
\usepackage{mathrsfs} % Красивый матшрифт

\begin{document}
    \begin{equation}
 \label{4} 
 \lim_{n\to\infty}
    \end{equation}
\ref{4}
   \[
   a^2+b^2=c^2
   \]
\end{document}  

该文件的最终态度:

在此处输入图片描述

答案1

在您的文档中,有(两次)这样的行

\mathtoolsset{showonlyrefs=true}

设置为包中的true选项。使用此选项时,仅显示在文本中实际引用为方程的方程。但是,方程应该用而不是 来引用。因此,在您的示例中,认为您没有引用方程,因此它没有对其进行编号,并且引用为空。showonlyrefsmathtools\eqref\refmathtools\ref{4}

\ref如果您用替换\eqref,或者不使用 选项showonlyrefsmathtools则标签将显示在您的示例中。

为了使其更明确,这里是用\ref{4}替换的示例\eqref{4},以及输出。

\documentclass[a4paper,12pt]{article} % добавить leqno в [] для нумерации слева

%%% Работа с русским языком
\usepackage{cmap}                   % поиск в PDF
\usepackage{mathtext}               % русские буквы в формулах
\usepackage[T2A]{fontenc}           % кодировка
\usepackage[utf8]{inputenc}         % кодировка исходного текста
\usepackage[english,russian]{babel} % локализация и переносы
%%% Дополнительная работа с математикой
\usepackage{amsmath,amsfonts,amssymb,amsthm,mathtools} % AMS
\usepackage{icomma} % "Умная" запятая: $0,2$ --- число, $0, 2$ --- перечисление
%% Номера формул
\mathtoolsset{showonlyrefs=true} % Показывать номера только у тех формул, на которые есть \eqref{} в тексте.
\DeclareMathOperator{\bjbjb}{tg}
\newcommand{\lra}{\Leftrightarrow}
\newcommand{\ua}{\Uparrow}
\newcommand{\da}{\Downarrow}

%% Шрифты
\usepackage{euscript}    % Шрифт Евклид
\usepackage{mathrsfs} % Красивый матшрифт

\begin{document}
    \begin{equation}
 \label{4} 
 \lim_{n\to\infty}
    \end{equation}
\eqref{4}
   \[
   a^2+b^2=c^2
   \]
\end{document} 

这是删除了两行的示例\mathtoolsset{showonlyrefs=true}及其输出。

\documentclass[a4paper,12pt]{article} % добавить leqno в [] для нумерации слева

%%% Работа с русским языком
\usepackage{cmap}                   % поиск в PDF
\usepackage{mathtext}               % русские буквы в формулах
\usepackage[T2A]{fontenc}           % кодировка
\usepackage[utf8]{inputenc}         % кодировка исходного текста
\usepackage[english,russian]{babel} % локализация и переносы
%%% Дополнительная работа с математикой
\usepackage{amsmath,amsfonts,amssymb,amsthm,mathtools} % AMS
\usepackage{icomma} % "Умная" запятая: $0,2$ --- число, $0, 2$ --- перечисление
\DeclareMathOperator{\bjbjb}{tg}
\newcommand{\lra}{\Leftrightarrow}
\newcommand{\ua}{\Uparrow}
\newcommand{\da}{\Downarrow}

%% Шрифты
\usepackage{euscript}    % Шрифт Евклид
\usepackage{mathrsfs} % Красивый матшрифт

\begin{document}
    \begin{equation}
 \label{4} 
 \lim_{n\to\infty}
    \end{equation}
\ref{4}
   \[
   a^2+b^2=c^2
   \]
\end{document} 

相关内容