对齐不同 tikzpictures 中的节点

对齐不同 tikzpictures 中的节点

可以将不同 tikzpictures 中的两个节点的基线对齐。我有一个 tikz,其align环境如下例代码所示

\begin{align}
&\tikz[remember picture]{\node(I){};} \to \Delta r \leq \frac{r}{n-1}\\
&\to\Delta r - \frac{r}{n-2} \leq 0
\end{align}

之后还有另一个 tikz,如下所示

\tikz[overlay,remember picture]{\node at(I){$\Delta r \to \frac{r}{n-1}$};}

如何才能使两个节点的基线对齐而不弄乱环境中的对齐align

编辑1:最小(不)工作示例

\documentclass[]{beamer}
\usepackage[english]{babel}

\usepackage{tikz}

\begin{document}
\begin{frame}
\begin{align*}
&\tikz[remember picture]{\node(I){};} \to \Delta r \leq \frac{r}{n-1}\\
&\to\Delta r - \frac{r}{n-2} \leq 0
\end{align*}
\visible<2->{\tikz[overlay, remember picture]{\node[anchor=east] at(I.west){$\Delta r \to \frac{r}{n-1}$};}}
\end{frame}
\end{document}

在此示例中,箭头没有垂直和水平对齐。

期望的输出: 在此处输入图片描述

答案1

垂直对齐问题是由于您的 TiZ 节点虽然为空,但大小不为零。第二个可以通过锚点来解决base

无论如何,你应该去看看tikzmark图书馆。

\documentclass[]{beamer}
\usepackage[english]{babel}

\usepackage{tikz}

\begin{document}
\begin{frame}
\begin{align*}
&\tikz[remember picture]{\node[inner sep=0pt, outer sep=0pt](I){};} \to\Delta r \leq \frac{r}{n-1}\\
&\to\Delta r - \frac{r}{n-2} \leq 0
\end{align*}
\visible<2->{\tikz[overlay, remember picture]{\node[anchor=base east] at(I.base){$\Delta r \to \frac{r}{n-1}$};}}
\end{frame}
\end{document}

在此处输入图片描述

但仍然不完美 --- 添加了一些额外的空间tikz。更好的做法是overlay

\documentclass[]{beamer}
\usepackage[english]{babel}

\usepackage{tikz}

\begin{document}
\begin{frame}
\begin{align*}
&\tikz[remember picture, overlay]{\node(I){};}\to\Delta r \leq \frac{r}{n-1}\\
&\to\Delta r - \frac{r}{n-2} \leq 0
\end{align*}
\visible<2->{\tikz[overlay, remember picture]{\node[anchor=base east] at(I.base){$\Delta r \to \frac{r}{n-1}$};}}
\end{frame}
\end{document}

在此处输入图片描述

相关内容