TikZ:沿路径的文本作为节点

TikZ:沿路径的文本作为节点

我正在使用装饰库将弯曲的文本沿路径放置。这很好用。但是,我想将弯曲的文本作为节点,以便以后可以将其用作参考(例如,为其绘制一条线)。这可能吗?我如何定义节点的名称?

这里有一个 MWE:

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{positioning}
\usetikzlibrary{decorations.text}
\usetikzlibrary{decorations.pathmorphing}

\begin{document}

\begin{tikzpicture}

\node at (0,0) (nodeA) {A};
\node at (2,2) (nodeB) {B};

\draw (nodeA) -- (nodeB);

\draw [decoration={text along path,
    text={path text},text align={center}},decorate]  (nodeA) -- (nodeB);

    \node at (0,2) (nodeC) {C};
    \draw [->] (nodeC) -- (.8,1.2);

\end{tikzpicture}

\end{document}

在最后一点,从(节点C)到“路径文本”绘制一条线,我必须使用坐标,但我希望能够使用节点引用。

图片看起来是这样的:

MWE 结果

答案1

如果您只是希望文本沿路径旋转和倾斜,您可以使用sloped节点的选项,而不需要使用decoration

在此处输入图片描述

代码:

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}

    \node at (0,0) (nodeA) {A};
    \node at (2,2) (nodeB) {B};
    
    \draw (nodeA) -- (nodeB);

    \draw (nodeA) -- (nodeB) node [midway, above, sloped] (TextNode) {path text};
    \node at (0,2) (nodeC) {C};
    \draw [->] (nodeC) -- (TextNode);

\end{tikzpicture}
\end{document}

相关内容