試した環境
dockerhubのplantuml/plantuml-server:v1.2024.5
動機
PlantUMLではsprite(二次元のビットマップ画像)をテキスト中やステレオタイプに指定することができます。
スプライトの定義と使用やPlantUML 標準ライブラリをよく読めばわかるのですが自分の備忘録のためにもspriteの見つけ方と使い方を記載しておこうと思います。
利点
サーバーを表現するときは
とかとりあえずnodeで記載したりするのですが
とか
で視覚的にわかりやすくなります。
見つけ方
@startuml
listsprite
@enduml
と入力すれば
と一覧が表示されます。しかしこれはデフォルトで規定されているArchiMateの一覧です。
@startuml
!include <archimate/Archimate>
listsprite
@enduml
の省略形です。(だと思います)
他のspriteの一覧を見たい場合はincludeを記載する必要があります。
office
@startuml
!include <office/all>
listsprite
@enduml
azure
@startuml
!include <azure/all>
listsprite
@enduml
include指定文字列の見つけ方
じゃあincludeに何を記載すれば見られるのかという話ですが、
plantuml-stdlibを見に行けばわかります。
たとえばofficeの一覧を見たい場合、サイトを見に行くとoffice/all.pumlがあるので
@startuml
!include <office/all.puml>
listsprite
@enduml
と入力すれば一覧を表示してくれます。puml拡張子はなくても大丈夫です。
all.pumlがない分類もあるのでその際は一個ずつみるかweb上でみるしかないと思います。
@startuml
!include <logos/apache>
listsprite
@enduml
とりあえず画像一覧が見れる場所
使い方
文章中に埋め込む
<$名称> をダブルクォーテーション中に入れれば表示されます。
@startuml
!include <office/Servers/web_server>
node "文章の中に<$web_server>web_serverを埋め込む"
@enduml
includeの指定はallがあればall指定でもいけました。
@startuml
!include <office/all>
node "文章の中に<$web_server>web_serverを埋め込む"
@enduml
ステレオタイプに埋め込む
ステレオタイプの中に $名称 を入れれば表示されます。
@startuml
!include <office/Servers/web_server>
node "ステレオタイプに表示する。" <<$web_server>>
@enduml
ステレオタイプにspriteと文字を同時には指定できないかもです。
方法わかる方いればご教示願います。
ArchiMateの場合
デフォルトに設定されているせいか少し書き方が違いました。
@startuml
node "device" <<$archimate/device>>
@enduml
終わりに
公式サイト以外にあんまり解説しているサイトを見つけることが出来なかったため、書いてみました。
誰かの一助になれば幸いです。