以双栏模式在页边空白处排版方程式编号

以双栏模式在页边空白处排版方程式编号

amsmath我正在尝试使用包(实际上是使用)以双列模式排版数学论文mathtools,使方程式编号出现在页边距中。要清楚:我希望左列中的方程式的方程式编号出现在左边距中,右列中的方程式的编号出现在右边距中。到目前为止,我已经取得了一些进展……

\makeatletter
\renewenvironment{equation}{%
  \refstepcounter{equation}
  \begin{equation*}%
}{%
  \end{equation*}%
  \marginpar{(\theequation)}
}
\makeatother

…但数字不在等式的中心,并且数字和文本块之间的空间在两边也不相同:

标签放置错误

这是一个最小工作示例:

\documentclass[a4paper,twocolumn,oneside]{article}

\usepackage{amsmath,kantlipsum}

\begin{document}

\kant[2]
\begin{equation}
  y = \int_{-\infty}^{\infty} \exp(-x^2) \operatorname{d}x
\end{equation}
\kant[3-4]
\begin{equation}
  y = \int_{-\infty}^{\infty} \exp(-x^2) \operatorname{d}x
\end{equation}

\end{document}

我并不反对使用其他软件包,但最好采用简单的解决方案。感谢您的帮助。

答案1

% Compiled with TexStudio; XeLaTex
% Made it work by adding \vspace{-2\baselineskip} 
\documentclass[a4paper,twocolumn,oneside]{article}

\usepackage{amsmath,kantlipsum}

\makeatletter
\renewenvironment{equation}{%
  \refstepcounter{equation}
  \begin{equation*}%
                           }{%
  \end{equation*}%
  
  \marginpar{\vspace{-2\baselineskip}(\theequation)}
                            }
\makeatother

\begin{document}

\kant[2]
\begin{equation}
  y = \int_{-\infty}^{\infty} \exp(-x^2) \operatorname{d}x
\end{equation}
\kant[3-4]
\begin{equation}
  y = \int_{-\infty}^{\infty} \exp(-x^2) \operatorname{d}x
\end{equation}

\end{document}

相关内容