You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PlantUML中调整组件右侧端口位置避免名称被遮挡?

问题

使用PlantUML绘制架构图时,WebServer组件右侧的5个端口连线遮挡了组件名称,尝试调整端口位置但未成功。以下是当前使用的代码:

component "WebServer" as WS {
    port " " as P21
    port " " as P22
    port " " as P23
    port " " as P24
    port " " as P25

    component "Web-GUI" as WG {
        port " " as P11
        port " " as P12
        port " " as P13
        port " " as P14
        port " " as P15
    }
}



     ' Connections between ports
    P21 -right- P11
    P22 -right- P12
    P23 -right- P13
    P24 -right- P14
    P25 -right- P15

@enduml```

当前效果:WebServer组件的5个端口集中在右侧中间区域,连线直接穿过组件名称,导致名称被遮挡。
目标效果:WebServer组件的5个端口沿右侧垂直分布,连线从组件右侧边缘引出,不遮挡组件名称。

# 解决方案
可以通过指定端口的边缘位置,并调整连线逻辑来解决遮挡问题,以下是两种可行的修改方案:

## 方案一:将端口放在组件外部右侧
这种方式能清晰分离组件内部结构与外部端口,避免布局冲突:

```@startuml
left to right direction

component "WebServer" as WS {
    component "Web-GUI" as WG {
        port " " as P11
        port " " as P12
        port " " as P13
        port " " as P14
        port " " as P15
    }
}

' 把WebServer的端口定位在组件右侧,自动垂直排列
port " " as P21 on right of WS
port " " as P22 on right of WS
port " " as P23 on right of WS
port " " as P24 on right of WS
port " " as P25 on right of WS

' 连接端口,使用双向连线避免强制穿过多层组件
P21 -- P11
P22 -- P12
P23 -- P13
P24 -- P14
P25 -- P15
@enduml```

## 方案二:在组件内部指定端口位置
如果需要保持端口在组件内部的嵌套结构,可通过`on right`参数明确端口位置:

```@startuml
component "WebServer" as WS {
    ' 指定端口位于组件右侧边缘
    port " " as P21 on right
    port " " as P22 on right
    port " " as P23 on right
    port " " as P24 on right
    port " " as P25 on right

    component "Web-GUI" as WG {
        ' 对应指定Web-GUI的端口在左侧边缘
        port " " as P11 on left
        port " " as P12 on left
        port " " as P13 on left
        port " " as P14 on left
        port " " as P15 on left
    }
}

' 使用普通连线让PlantUML自动规划路径,避免穿过组件名称
P21 -- P11
P22 -- P12
P23 -- P13
P24 -- P14
P25 -- P15
@enduml```

**核心调整点**:
1. 用`on right`/`on left`指定端口的边缘位置,让端口沿组件垂直方向分布,不再集中在中间区域。
2. 移除`-right-`这类强制方向的连线语法,让PlantUML自动生成合理的连线路径,避免穿过组件名称。

内容的提问来源于stack exchange,提问作者Altin Mag.
相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 23:47:13