tikz 中多部分节点各部分的不同宽度

tikz 中多部分节点各部分的不同宽度

有没有办法定义多部分节点不同部分的不同宽度?我没有提供 MWE,因为我认为问题的范围非常有限——我想要的只是将第一部分的最小宽度设置为某个值,将第二部分的最小宽度设置为其他值。

答案1

无法minimum width为多部分节点中的每个部分定义不同的部分,但是如果您只想要两个或三个部分的节点,则可以使用labels。 下面的这段代码显示了两个和三个部分的节点,每个部分的宽度不同:

\documentclass[tikz,border=2mm]{standalone}

\begin{document}
\begin{tikzpicture}

\node[draw, fill=red!30, text width=3cm, 
     label={[text width=1.8cm, draw, align=center, fill=blue!30, 
           yshift=-\pgflinewidth]This is the first part of the text}]
     {This is the second part of my text};

\node[draw, fill=red!30, text width=3cm, 
     label={[text width=1.8cm, draw, align=center, fill=blue!30, 
           yshift=-\pgflinewidth]This is the first part of the text},
     label={[text width=2.2cm, draw, align=center, fill=green!30,
           yshift=\pgflinewidth]below:This is the third of the text}] 
     at (4,0) {This is the second part of my text};
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

您可以为多部分节点的每个部分设置样式。这里没有 MWE,很难举例。我一直在处理的节点是 9 部分节点,因此它们实际上不适用于 MWE。

此链接显示了如何操作。

every text node part/.style={text width = 2cm}是关键代码,其中text是节点主要部分的名称,然后是其他命名部分。例如,如果您有一个名为 的节点部分two,您可以这样做every two node part/.style={text width = 1cm}

相关内容