等式上方和下方的双向箭头

等式上方和下方的双向箭头

我创建了一些 Latex 矩阵方程。我想创建一个矩阵维度工作流程:

\begin{align}
    &\hphantom{(2\times 3)( }%
        \overbrace{\hphantom{1 \times 3) = 2 \times 1} } \nonumber \\[-07pt]%
    &( \underbrace{ 2\times 
        \underbrace{
            3) ( 1 \times 3
            }%
        ) = ( 2 } %
    \times 1) \nonumber
\end{align}

结果是在此处输入图片描述我已经习惯\overbrace在工作流程中创建括号。我想要相同的结果,但没有\overbrace,而是有(双向)箭头。

答案1

使用\overleftrightarrow\underleftrightarrow

\documentclass[a4paper]{article}
\usepackage{amsmath}
\begin{document}    
\begin{align}
    &\hphantom{(2\times 3)( }%
        \overleftrightarrow{\hphantom{1 \times 3) = (2 \times 1} } \nonumber \\[-07pt]% 
    &( \underleftrightarrow{ 2\times
        \underleftrightarrow{
            3) ( 1 \times 3
            }% 
        ) = ( 2 } %
    \times 1) \nonumber
\end{align}
\end{document}

箭

答案2

您可以使用tikzmark。选项overlayremember picture必须添加到后续的tikzpicture。进行更改时,您需要多次编译文档。

在此处输入图片描述

请注意,您可以移动节点,如果您进行更改,箭头也会跟随,例如以标准方式放置矩阵维度:

在此处输入图片描述

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{tikzmark}

\begin{document}

\[
(\tikzmarknode{A}{2}\times\tikzmarknode{B}{3})(\tikzmarknode{C}{1}\times\tikzmarknode{D}{3})
    =(\tikzmarknode{E}{2}\times\tikzmarknode{F}{1})
\]

%\[
%(\tikzmarknode{A}{2}\times\tikzmarknode{B}{3})(\tikzmarknode{D}{3}\times\tikzmarknode{C}{1})
%   =(\tikzmarknode{E}{2}\times\tikzmarknode{F}{1})
%\]

\begin{tikzpicture}[overlay, remember picture, shorten <=1pt, shorten >=1pt]
    \draw [<->] (A.south) --++(0,-.3) -| (E.south);
    \draw [<->] (B.south) --++(0,-.2) -| (D.south);
    \draw [<->] (C.north) --++(0,.2) -| (F.north);
\end{tikzpicture}

\end{document}

相关内容