我在用TikZ-UML
很棒的套餐我在定义 UML 图的全局配置时遇到了麻烦。
请考虑这个MWE:
\documentclass{article}
\usepackage{tikz-uml}
\tikzumlset{fill usecase=white}
\begin{document}
\begin{tikzpicture}
\begin{umlsystem}[x=6] {Name}
\umlusecase[width=2.5cm] {case 1}
\umlusecase[x=5,width=2.5cm] {case 2}
\umlusecase[x=5,y=-2,width=2.5cm] {case 3}
\end{umlsystem}
\end{tikzpicture}
\end{document}
我想设置width=2.5cm
为每一个 umlusecase
我尝试过
\tikzumlset{fill usecase=white,every umlusecase/.style={width=2.5cm}}
(删除所有width=2.5cm
)umlusecase
但它不起作用:
有谁知道如何概括该属性?
谢谢!
答案1
以下方法似乎有效。我使用了 TeXnician 的想法,修补\umlusecase
宏以删除样式的重置/usecase/style
,然后使用usecase/style/.style={text width=2.5cm}
它而不是您的版本来设置宽度。
\documentclass[border=5mm]{standalone}
\usepackage{xpatch}
\usepackage{tikz-uml}
\xpatchcmd{\umlusecase}
{style/.style={}}
{}
{}{}
\tikzumlset{
fill usecase=white,
usecase/style/.style={text width=2.5cm}
}
\begin{document}
\begin{tikzpicture}
\begin{umlsystem}[x=6] {Name}
\umlusecase {case 1}
\umlusecase[x=5] {case 2}
\umlusecase[x=5,y=-2] {case 3}
\end{umlsystem}
\end{tikzpicture}
\end{document}