我正在排版一堆证明,我想遵循一个惯例,即每当我引入一个前提时,它都会使用粗体字体进行编号(例如(1)),但当我在文本中引用它时,它使用普通字体书写(例如 (1))。但是,我在方程式方面遇到了问题。我弄清楚了如何自定义方程式标签的样式以使其加粗,但当我使用该\ref
引用引用该方程式时,它也是加粗的。这是一个最小的例子:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
2 + 2 = 4
\refstepcounter{equation}\tag*{\textbf{(\theequation)}}
\label{foo}
\end{equation}
Reference to equation \ref{foo} is now in bold but I want it to be (1).
\end{document}
上述代码产生:
如何使用普通(非粗体)字体进行引用?
答案1
可以借助 更改标记形式,但这不会直接帮助这里,因为当前标记形式也会影响引用,而这正是您不希望看到的。可以只在显示的方程式中更改标记形式,然后将其恢复为默认形式,但我对mathtools
入侵并不像使用 那样放心。mathtools
amsmath
\documentclass[twocolumn]{article} % twocolumn for smaller snapshot
\usepackage{amsmath}
\makeatletter
\renewcommand{\eqref}[1]{\textup{(\ignorespaces\ref{#1}\unskip\@@italiccorr)}}
\def\maketag@@@#1{\hbox{\m@th\normalfont\bfseries#1}}
\makeatother
\begin{document}
\begin{align}
2 + 2 &= 4 \label{foo} \\
1 + 3 &= 4 \label{bar} \tag{test 1} \\
2 + 3 &= 5 \label{baz} \tag*{test 2} \\
3 + 3 &= 6 \label{bla} \tag{$*$}
\end{align}
Compare \ref{foo} and \eqref{foo};
\ref{bar} and \eqref{bar};\\
\ref{baz} and \eqref{baz};
\ref{bla} and \eqref{bla}
\end{document}
请注意,星号当然不是粗体;如果您需要这样的东西,您必须自己将其变为粗体。