提问人:Alexander Mills 提问时间:10/6/2023 最后编辑:ChristopheAlexander Mills 更新时间:10/7/2023 访问量:70
如何更改 PlantUML 序列图中条件块的格式
How to change formatting of conditional blocks in PlantUML sequence diagram
问:
我有看起来像这样的东西:
生成条件块的代码为:
alt Condition1
Object3 -> Object4: Message5
else Condition2
Object3 -> Object5: Message6
end
我有 2 个问题:
有没有办法更改框左上角显示中的“alt”文本?似乎很奇怪,因为“alt”的含义不明确
有没有办法将“[条件 2]”文本居中?它的格式向左,而 [条件 1] 居中,这似乎很奇怪。
答:
PlantUML 序列图尽量使用标准 UML。灰色五边形在 UML 表示法中对应于交互运算符。 是替代项的 UML 关键字(即在编程语言中,结构如 或 s)。在 UML 世界中,alt 绝对没有什么奇怪的。你很快就会习惯的;-)alt
if..else
witch ..case
您还可以使用其他 UML 交互运算符,例如 、 、 ,但每个运算符在 UML 中都有特定的含义和略有不同的语法,尽管 plantuml 在这方面的限制较少。opt
loop
break
par
但是你会很高兴地发现,如果你在灰盒标题前面加上关键字,PlantUML并没有那么严格,并允许一些灵活性:group
group if Condition1
Object3 -> Object4: Message5
else Condition2
Object3 -> Object5: Message6
end
关于条件的位置,您触摸一个点,因为 planUML 会将其尽可能左对齐到框中。根据 UML 的说法,该条件应位于特定的生命线上,而不一定位于左侧。以下是 UML 规范摘录:
InteractionConstraint 显示在方括号中,覆盖将发生第一个事件的生命线,位于该事件的上方,位于包含的 Interaction 或 InteractionOperand 中。
为此,在当前的 plantUML 版本中没有解决方案。我过去已经尝试过一切,甚至是使用引号(不幸的是显示)和 unicode 硬空格 () 的手动空白填充,这有效但包含在括号之间,因此看起来很丑陋。
评论