tikz:相对于一条线旋转和定位文本

tikz:相对于一条线旋转和定位文本

此代码

\documentclass{minimal}
\usepackage{tikz}
\begin{document}
  \begin{tikzpicture}
    ...
    \path (0, 0) edge node [sloped, anchor=center, below] {line}(3, 3);
  \end{tikzpicture}
\end{document}

给出输出

在此处输入图片描述

相对于通过其他方法绘制的线,文本具有完全所需的方向和位置:

 \pgfpathmoveto{\pgfpointxy{0}{0}};
 \pgfpathlineto{\pgfpointxy{3}{3}};
 \pgfusepath{stroke}

因此,我只需要文本,不需要线条。我该如何实现呢?

答案1

\documentclass{minimal}
\usepackage{tikz}
\usetikzlibrary{quotes}
\begin{document}
  \begin{tikzpicture}
        \path[red]  (0,0) edge node[below,sloped] {line} (3, 3);
        \path       (0,0) to [pos=0.4, sloped, "line" '] (3, 3);
  \end{tikzpicture}

  \begin{tikzpicture}[
  every edge quotes/.append style = {anchor=north, sloped}
                     ]
        \path[red]  (0,0) edge node[below,sloped] {line} (3, 3);
        \path       (0,0) to ["line"] (3, 3);
  \end{tikzpicture}
\end{document}

(作为补充敲击评论)。在方向上定位边缘标签有点棘手sloped。在这种情况下,如果您需要精确居中的标签,则有三种可能性:

  • 手动调整标签位置(如上图所示)
  • 重新定义边缘标签样式(下图)
  • 使用边缘节点(下图中为红色,但有可见的线,以便更好地定位标签的位置)

在此处输入图片描述

相关内容