如何使用相对定位垂直对齐不同大小的节点

如何使用相对定位垂直对齐不同大小的节点

我正在尝试绘制一条时间线,我想使用水平双箭头(例如)标记时间间隔<--->。不幸的是,由于节点$t$$t + \ell_t$的高度不同,间隔“发货前置时间”不是一条水平线。如何修复节点以使它们具有相同的高度?

在此处输入图片描述

答案1

您可以使用垂直坐标系,而不必更改节点(将红色倾斜规则与两个水平黑色规则进行比较):

\documentclass{article}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
\node[anchor=south] (A) {\Huge A};
\node[anchor=south] at (2,0) (B) {B};
\draw[red] (A) -- (B);
\draw (A) -- (B.west|-A);
\draw (A.east|-B.west) -- (B.west);
\end{tikzpicture}

\end{document}

在此处输入图片描述

(<name1>|-<name2>)具有x的坐标<name1>y的坐标<name2>(<name1>-|<name2>)具有 的y坐标<name1>x的坐标<name2>

但是,如果您希望节点具有相同的总高度,请为键text height和/或分配相同的值text depth

\documentclass{article}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
\node[draw] (A) {$t$};
\node[draw] at (2,0) (B) {$t_{l_{m}}$};
\draw[red] (A.south east) -- (B.south west);
\begin{scope}[xshift=3cm]
\node[draw,text depth=0.35ex] (A) {$t$};
\node[draw,text depth=0.35ex] at (2,0) (B) {$t_{l_{m}}$};
\draw (A.south east) -- (B.south west);
\end{scope}
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容