我使用循环路径绘制了一个箭头。我想在中间放置一个文本节点(相对于X和是轴)。
\documentclass{scrartcl}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (4,0.25) -- ++(0,2.5) -- ++(-.25,0) -- ++(.5,.5) -- ++(.5,-.5) --++(-.25,0) -- ++(0,-2.5) -- cycle;
\node at (4.25,1.5) [rotate=90, anchor=center] {\textbf{here!}};
\draw (6,0.25) -- ++(0,2.5) -- ++(-.25,0) -- ++(.5,.5) -- ++(.5,-.5) --++(-.25,0) -- ++(0,-2.5) -- cycle node [pos=.5, rotate=90] {not there};
\end{tikzpicture}
\end{document}
我努力了pos=.5
(如\draw (0,0) rectangle (1,1) node [pos=.5] {here!};
)和midway
(如\draw (0,0) -- (1,1) node [midway] {here!};
)但它不起作用......
答案1
您需要将节点放在正确的路径上......
\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{shapes.arrows}
\begin{document}
\begin{tikzpicture}
\draw (4,0.25) -- ++(0,2.5) -- ++(-.25,0) -- ++(.5,.5) -- ++(.5,-.5) --++(-.25,0) -- ++(0,-2.5) -- cycle;
\node at (4.25,1.5) [rotate=90, anchor=center] {\textbf{here!}};
\draw (6,0.25) -- node [text=red, sloped,below=-0.5pt] {I'm here} ++ (0,2.5) -- ++(-.25,0) -- ++(.5,.5) -- ++(.5,-.5) --++(-.25,0) -- ++(0,-2.5) -- cycle;
\node[single arrow, draw, text=blue,
minimum height=30mm, single arrow head extend=2.5mm,
rotate=90,anchor=west] at (8,0.25) {I'm in node};
\end{tikzpicture}
\end{document}
但是,看看形状single arrow
(包shapes.arrows
)的使用是否更适合您的需求。添加了其使用示例(最右边的箭头)。