在 TikZ 中隐身覆盖文本?

在 TikZ 中隐身覆盖文本?

我尝试使文本覆盖在隐身效果之上,就好像隐身效果的那部分被文本覆盖而变得不可见一样。

我现在拥有的是

\documentclass[a4paper]{article}
\usepackage{tikz}
\usetikzlibrary{backgrounds, calc, positioning, fit}

\begin{document}

\begin{tikzpicture}
    \node[draw] (a) {A node};
    \node[draw,align=center] (b) at (0,-5) {Another\\node};
    \draw[-stealth] (a.west) --++ (-1, 0) |- (b.west)node[pos=0.4, above]{Text};
\end{tikzpicture}

\end{document}

这让我

enter image description here

可以看出,隐身“穿过”了文本节点,这是不受欢迎的。

我该如何修复它?

答案1

text node正如 Qrrbrbirlbel 所建议的,使用path命令放置并使用后置命令放置路径很容易draw。这样,您无需使用fill文本节点来覆盖隐身或使用decorations来放置node它。

\documentclass[tikz]{standalone}

\begin{document}
\begin{tikzpicture}
    \node[draw] (a) {A node};
    \node[draw,align=center] (b) at (0,-5) {Another\\node};
    % next command will place text node where you want. Assign a name to it.
    \path (a.west) --++ (-1, 0) |- (b.west)node[pos=0.4, above](text) {Text};
    % Draw a fragmented stealth
    \draw (a) -| (text);
    \draw[-stealth] (text) |- (b);
\end{tikzpicture}
\end{document} 

enter image description here

相关内容