
Quiero agregar algunos textos entre líneas en elalinear*entorno como este:
Probé el siguiente código:
\documentclass{article}
\usepackage{tikz,amsmath}
\usetikzlibrary{tikzmark}
\begin{document}
\begin{align*}
abc &= def + def + def + def \tikzmark{a}\\
&= ghi + ghi \tikzmark{b}\\
&= jkl\tikzmark{c}\\
&= mno + mno\tikzmark{d}
\end{align*}
\begin{tikzpicture}[remember picture, overlay]
\draw[->] ([xshift=2mm] pic cs:a)
to [out=0,in=0 ]
node[midway,anchor=west,xshift=3mm] {\footnotesize defitnition}
([xshift=2mm] pic cs:b);
\draw[->] ([xshift=2mm] pic cs:c)
to [out=0,in=0 ]
node[midway,anchor=west,xshift=3mm] {\footnotesize blablabla}
([xshift=2mm] pic cs:d);
\end{tikzpicture}
\end{document}
pero solo da
Hay dos problemas:
(i) Quiero que cada flecha esté alineada verticalmente
(ii) Como voy a utilizar esta flecha con mucha frecuencia, quiero definirla como una especie de comando nuevo.
¿Qué puedo hacer?
Respuesta1
Esto se puede hacer usando el witharrows
paquete.
Aquí está el código:
\documentclass{article}
\usepackage{witharrows}
\begin{document}
\[
\begin{WithArrows}
abc &= def+def+def+def \Arrow[tikz={font={\mdseries}}]{definition} \\
&= hgi+hgi\\
&= jkl\Arrow[tikz={font={\mdseries}}]{blablabla}\\
&=mno+mno
\end{WithArrows}
\]
\end{document}
Tenga en cuenta que es posible que tenga que compilar dos veces cuando utilice witharrows
.
Ve a ladocumentación del paqueteen CTAN para ver las muchas opciones de uso, incluidas fuentes, puntas de flecha, curvatura, color, etc.
Respuesta2
Solo para completar: con tikzmark
, que estás usando, no hay problema en completar el código para dar
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{tikzmark}
\begin{document}
\begin{align*}
abc &= def + def + def + def \tikzmarknode{a}{}\\
&= ghi + ghi \tikzmarknode{b}{}\\
&= jkl\tikzmarknode{c}{}\\
&= mno + mno\tikzmarknode{d}{}
\end{align*}
\begin{tikzpicture}[remember picture, overlay,font=\footnotesize]
\draw[-latex] ([xshift=2mm]a.east) coordinate (r)
to [out=0,in=0,looseness=2]
node[midway,anchor=west,xshift=3mm] {definition}
(b -| r);
\draw[-latex] (c-|r)
to [out=0,in=0,looseness=2]
node[midway,anchor=west,xshift=3mm] {blablabla}
(d-|r);
\end{tikzpicture}
\end{document}