将节点内容置于节点标签上

将节点内容置于节点标签上

我使用标签在我的 TikZ 图片中放置图标:

\begin{tikzpicture}[
  switch/.style={label=center:{\includegraphics[width=1.5cm]{switch.png}}},
  cloud/.style={label=center:{\includegraphics[width=2.5cm]{cloud.png}}}
]
  \node[switch] (switch) {};
  \node[cloud, left of=switch] (internet) {Internet};
\end{tikzpicture}

默认情况下,标签放置在节点内容上方,因此看不到例如文本“Internet”,因为云正在其上方绘制。

我怎样才能将标签放在节点文本下方,或者将节点文本放在标签上方?

答案1

一个解决方案:

\documentclass{article}
\usepackage{tikz,graphicx}
\begin{document}

\begin{tikzpicture}
  \node (switch) {\includegraphics[width=1.5cm]{example-image-A}};
  \node [label={center:Internet}, left of=switch] (internet){\includegraphics[width=2.5cm]{example-image-B}};
\end{tikzpicture}

\end{document}

在此处输入图片描述

将图标放在节点内容内,将文本放在标签内。或者,cloud按如下方式修改节点:

\node[cloud, left of=switch, label=center:Internet] (internet) {};

因此,代码现在变成:

\begin{tikzpicture}[
  switch/.style={label=center:{\includegraphics[width=1.5cm]{example-image-A}}},
  cloud/.style={label=center:{\includegraphics[width=2.5cm]{example-image-B}}}
]
  \node[switch] (switch) {};
  \node[cloud, left of=switch, label=center:Internet] (internet) {};
\end{tikzpicture}

答案2

我没有您的switch.png图像cloud.png,但这里是如何控制标签位置:

\node[cloud, left of=switch,label={[label distance=1cm]90:interent}] (internet) {};

您可以通过改变来调整距离1cm,通过改变来调整角度90

相关内容