如何在 tikz-uml 中的系统中拥有系统

如何在 tikz-uml 中的系统中拥有系统

我正在使用该tikz-uml包并尝试创建一个用例图,其中我在另一个系统中有一个系统,如下所示:

\documentclass[a4paper]{report}


\usepackage{tikz}
\usepackage{ifthen}
\usepackage{xstring}
\usepackage{calc}
\usepackage{pgfkeys}
\usepackage{pgfopts}
\usepackage{tikz-uml}

\begin{document}

\begin{figure}[H]
    \centering
    \begin{tikzpicture}

    \begin{umlsystem} [x=0, y=0] {System 1}
        \begin{umlsystem} [x=0.1, y=-1] {System 2}

        \end{umlsystem} 
    \end{umlsystem}

    \end{tikzpicture}
\end{figure}
\end{document}

最终输出如下:
实际支出

这就是我希望它看起来的样子: 首选输出

有没有办法做到这一点?

答案1

将第二个系统放置在第一个系统之后,并在第一个系统内添加

\tikzset{every node/.append style={inner xsep=12ex,inner ysep=3em}}

基本上,system没有任何设置的系统\umlusecase只是一个具有设置的空节点inner xsep=10ex, inner ysep=1em。该tikzset行将覆盖该设置,使节点稍微大一些。然后,您可以将具有默认大小的第二个系统放在顶部。

代码输出

\documentclass[a4paper]{report}
\usepackage{tikz-uml}
\begin{document}
    \begin{tikzpicture}
    \begin{umlsystem}{System 1}
    \tikzset{every node/.append style={inner xsep=12ex,inner ysep=3em}}
    \end{umlsystem}
    \begin{umlsystem}[y=0.2]{System 2}
    \end{umlsystem} 
    \end{tikzpicture}
\end{document}

相关内容