在东北角用象形文字定义多部分嵌套节点

在东北角用象形文字定义多部分嵌套节点

我正在尝试设置一种节点样式,使我能够绘制像 UML2 组件图等这样的节点。

我认为一个好的语法想法是:

\node {node}
    child{
         \node {other node}
    };

这很好,但我不知道如何将其格式化为矩形,并将组件符号放置在东北角。

tikz-uml不是我需要的,因为它的界面与 TikZ 不同。

我也尝试将其排版为:

\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}

\begin{document}
   \begin{tikzpicture}[remember picture]
      \node[draw, execute at begin node = \begin{tikzpicture}, execute at end node = \end{tikzpicture}] at (-1,-1)
      {
         \node[draw,minimum width=20pt] at (-1,1) {node};
      };
      \node[draw] at (1,1)
      {
         \begin{tikzpicture}
            \node[draw,minimum width=20pt] at (-1,1) {node};
         \end{tikzpicture}
      };
   \end{tikzpicture}
\end{document}

但嵌套节点存在一个问题。

该问题会execute at begin node影响子节点。


我正在寻找可以让我轻松创建 UML2 组件节点的方法。无论如何,我都想通过以下方式创建它:

\node [umlcomponent] ...

\umlcomponent[fill=red...] at (2,2) {damn UML component} ...
\draw (1,1) umlcomponent {damn uml component} ...

我的问题是:
我如何定义自定义 TikZ 命令/宏/某些东西来让我达到语法 带有象形文字装饰的嵌套节点类

相关内容