連接連續方程式的環境

連接連續方程式的環境

我正在尋找的是一個連續方程式的等號自動連接的環境。期望的輸出是:

在此輸入影像描述

目前,我透過以不方便的方式使用 tikz 和 tikzmark 套件來實現這一點。

\begin{align*}
   \phi &\ {\tikzmarknode{NA}=} \left(\frac{4\zeta}{1-z^{2}}\right)^{1/4}\\
        &\ {\tikzmarknode{NB}=} \sqrt{2}\zeta^{\frac{1}{4}}\left(\frac{X}{X-1}\right)^{1/4}\\
        &\ {\tikzmarknode{NC}=} \sqrt{2}\zeta^{1/4}\gamma^{-1}
\end{align*}
\begin{tikzpicture}[remember picture]
   \draw[overlay] (NA) -- (NB);
   \draw[overlay] (NB) -- (NC);
\end{tikzpicture}

有用的是編寫一個新環境,自動添加 tikzpicture 和 & 字元後面的節點。有沒有更簡單的方法來達到相同的效果,這樣我可以簡單地寫:

\begin{conteqns}
  \phi &= \left(\frac{4\zeta}{1-z^2}\right)^{1/4}\\
       &= \sqrt{2}\zeta^{1/4}\left(\frac{X}{X-1}\right)^{1/4}\\
       &= \sqrt{2}\zeta^{1/4}\gamma^{-1}
\end{conteqns}

答案1

此範例可能是第一種(略有不同)方法。它創建一個\equal巨集和一個計數器。此巨集放置等號,\tikzmarknode並繪製一條線到前一個等號(如果有)。顯然,計數器對等於/節點進行編號。

編輯:請注意,如果您需要多個此類環境,則需要重設計數器:

\setcounter{NumberOfEquals}{0}

像這樣:

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{tikzmark}

\newcounter{NumberOfEquals}
\NewDocumentCommand{\equal}{}
{%
  \mathbin{\tikzmarknode{equal\theNumberOfEquals}{=}}%
  \ifnum\theNumberOfEquals>0%
    \pgfmathtruncatemacro\LastEqual{\theNumberOfEquals-1}%
    \tikz[remember picture,overlay]\draw ([yshift=1pt]equal\theNumberOfEquals.north) -- (equal\LastEqual.south);%
  \fi%
  \stepcounter{NumberOfEquals}%
}

\begin{document}
Just follow the lines:
% If this is not the first use:
\setcounter{NumberOfEquals}{0}
%
\begin{align*}
   \phi & \equal \left(\frac{4\zeta}{1-z^{2}}\right)^{1/4}\\
        & \equal \sqrt{2}\zeta^{\frac{1}{4}}\left(\frac{X}{X-1}\right)^{1/4}\\
        & \equal \sqrt{2}\zeta^{1/4}\gamma^{-1}
\end{align*}
\end{document}

在此輸入影像描述

相關內容