我在使用 绘制用例图时遇到了问题tikz-uml
。如果我只使用 则没有问题tikz-uml
,但如果也包括smartdiagram
包则有问题。
我遇到了一些错误,告诉我需要连接层,所以我设置了图层。
但是现在我遇到的问题是系统框内的线条被隐藏了!
我是否遗漏了某个图层?(前台不工作,它告诉我这个图层不在我的列表中。
它smartdiagram
看起来像:
代码:
\documentclass[12pt,article]{memoir}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\linespread{1.05}
\usepackage[ngerman]{babel}
\usepackage{tikz}
\usepackage{tikz-uml}
%\usepackage{smartdiagram}
\begin{document}
%\pgfsetlayers{connections,background,main,smart diagram arrow back}
\begin{figure}[htbp]
\centering
\resizebox {\columnwidth} {!} {
\begin{tikzpicture}
\begin{umlsystem}{Testsystem}
\umlusecase[x=-3]{Betankung beauftragen}
\umlusecase[x=3, y =-1]{Flugzeug betanken}
\umlusecase[x=-2,y=-2]{Betankung bestätigen}
\end{umlsystem}
\umlactor[x=-8]{Initiator}
\umlactor[x=8]{Mitarbeiter A}
\umlassoc{Initiator}{usecase-1}
\umlassoc{Initiator}{usecase-3}
\umlassoc{Mitarbeiter A}{usecase-2}
\end{tikzpicture}
}
\caption{Use-Case 1.}
\end{figure}
\end{document}
答案1
如果你将connections
图层移动到堆栈顶部,它似乎工作正常,即
\pgfsetlayers{background,main,smart diagram arrow back,connections}
或者,交换包加载的顺序,使其tikz-uml
最后加载:
\usepackage{smartdiagram}
\usepackage{tikz-uml}
我猜smartdiagram
会覆盖图层列表,从而删除connections
由 定义的图层tikz-uml
。如果您在其他地方使用smartdiagram
,您可能会遇到类似的错误,在这种情况下,\pgfsetlayers
我想您无论如何都需要该行。
无论哪种方式,示例的结果输出都是