如何在方程编号前添加“方程”一词?

如何在方程编号前添加“方程”一词?

我即将在大学提交一份报告,需要对方程式进行一些格式化。

好像还不够清楚,他们希望我把方程式像表格或图形一样进行编号,我的意思是他们希望我把方程式编号为:方程式 1.1,而不仅仅是 (1.1)

我已经解决了这个问题,更新了命令\theequation\renewcommand{\theequation}{Ecuación \thechapter.\arabic{equation}}但我遇到了一些问题:

  • 我需要去掉括号。
  • 当进行交叉引用时,我打印了单词 Ecuación。

我已经阅读过 amsmath 文档,但没有找到任何可以帮助我的东西,如何解决这个问题?

\documentclass[a4paper, 12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[spanish,mexico]{babel}
\usepackage{amsmath}
\renewcommand{\theequation}{Ecuación \thechapter.\arabic{equation}}
\begin{document}
    \chapter{Test}

    See test equation \eqref{eq:test}
    \begin{equation}
        a+b=c^2 \label{eq:test}
    \end{equation}
\end{document}

答案1

\tagform@公式标签由具有默认定义的宏格式化

\def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip\@@italiccorr)}}

您可以重新定义它以使用所需的格式。

关于您的第二点:\eqref旨在以与方程式标签中出现的格式相同的格式输出方程式编号(使用\tagform@)。如果您只想要方程式的编号而不进行任何格式设置,则只需使用\ref即可。

\documentclass[a4paper, 12pt]{report}

\usepackage[spanish,mexico]{babel}
\usepackage{amsmath}

\makeatletter
  \renewcommand*\tagform@[1]{\maketag@@@{Ecuación~\ignorespaces #1\unskip\@@italiccorr}}
\makeatother

\begin{document}

\chapter{Test}

See test equation \eqref{eq:test}
\begin{equation}
    a+b=c^2 \label{eq:test}
\end{equation}

You can also just reference the equation number: \ref{eq:test}

\end{document}

答案2

不太确定您想要什么交叉引用,但据我所知,这是如何做到的:对于括号,您可以使用中的\newtagform\usetagform命令mathtools。对于引用,只需使用\ref而不是\eqref。我添加了一个默认的示例\crefcleveref可以自定义。

笔记:如果您还加载hyperref,则 cleveref 必须在前一个包之后加载,并且两者都必须在前言末尾加载。

\documentclass[a4paper, 12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[spanish,mexico]{babel}
\usepackage{mathtools}

\usepackage{cleveref}

\newtagform{Eq}{Ecuación\;}{}
\usetagform{Eq}

\begin{document}

    \chapter{Test}

    See test \ref{eq:test} or, with cleveref: see \cref{eq:test}
    \begin{equation}
        a+b=c^2 \label{eq:test}
    \end{equation}

\end{document} 

在此处输入图片描述

相关内容