我创建了一些 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
。选项overlay
和 remember 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}