路線中各行之間垂直箭頭的水平定位

路線中各行之間垂直箭頭的水平定位

我正在嘗試建立類似的結構

\documentclass{article}
\usepackage{amsmath,mathtools}

\begin{document}
\begin{align*}
  a &= b \\
    &\Downarrow \\
  a &= c
\end{align*}
\end{document}

在此輸入影像描述

為了看起來好點。問題在於符號\Downarrow之間沒有水平居中=。雖然我理解為什麼會發生這種情況以及為什麼 a\mathrel{\Downarrow}沒有幫助,但我不知道如何解決它。我知道\ArrowBetweenLines[\Downarrow]中的功能mathtools,但那是為了讓箭頭位於對齊線的左側。理想情況下,我想要一些以相同方式工作的東西\vdotswithin{=}(來自mathtools)。那存在於某處嗎?或者手動「建立對應於{}={}並排版」的「\Downarrow位於其中心」的方塊會很困難嗎?

答案1

\vdotswithin這是from的定義mathtools:

\newcommand\vdotswithin[1]{%
  {\mathmakebox[\widthof{\ensuremath{{}#1{}}}][c]{{\vdots}}}}

您可以將其更新為\symbolwithin{<symbol>}{<within symbol>}(例如):

在此輸入影像描述

\documentclass{article}

\usepackage{mathtools}

\newcommand\symbolwithin[2]{%
  {\mathmakebox[\widthof{\ensuremath{{}#2{}}}][c]{{#1}}}}

\begin{document}

\begin{align*}
  a &= b \\
    &\symbolwithin{\Downarrow}{=} \\
  a &= c
\end{align*}

\end{document}

答案2

在這裡,我將向下箭頭放在等號大小的方塊中

\documentclass{article}
\usepackage{amsmath,mathtools,calc}
\begin{document}
\begin{align*}
  a &= b \\
    &\makebox[\widthof{${}={}$}]{$\Downarrow$} \\
  a &= c
\end{align*}
\end{document}

在此輸入影像描述

相關內容