ダイアグラムの書き方と書く場所

各ダイアグラムの記述は@startumlキーワードで開始し@endumlキーワードで終了します。(または、ダイアグラムの種類に応じて@startXYZ@endXYZを使用します。)

the PlantUML Language Reference Guideを参照してください。

以下の場所に記述できます:

HTML、LaTeX、APT、Java/C/C++ファイルの場合は、当然、コメント中にダイアグラムを記述する必要があります。

ファイル名

デフォルトでは、.pngファイルは、それを生成するために使われたソースファイルと同じ名前になります(拡張子のみ変更されます)。

ソースファイルに複数の@startXXXが含まれていた場合は、自動的に連番が追加されます。

生成するファイルに別の名前を付けることもできます。例えば、:

@startuml image.png
Alice->Bob: Authentication Request
Bob-->Alice: Authentication Response
@enduml

この場合、.pngファイルはimage.pngという名前になります。

(Word統合機能では、この機能を使うことはできません。)

WARNING
 This translation need to be updated. 
WARNING

IDを使ったインクルード[include]

ファイルの一部に対してIDを宣言することができます(id=<identifier>)、例えば:

file.puというファイルに対する例です:

@startuml(id=TAG1)
Alice->Bob : TAG1
@enduml

@startuml(id=TAG2)
Alice->Bob : TAG2
@enduml

その後、!include <filemane>!<id>コマンドを使用して、先ほど定義したidの個所をインクルードすることができます:

@startuml
!include file.pu!TAG2
Alice->Bob : hello
@enduml

これに対応する出力は次のようになります:

🎉 Copied!

@startuml
Alice->Bob : TAG2
Alice->Bob : hello
@enduml

[Ref. QA-4467]

定義IDをつかった(同一ファイル中での)インクルード [includedef]

@startdef(id=<identifier>)@enddefで囲むことで、ファイルの一部を定義(def)として宣言することができます。

それから、!includedef <identifier>コマンドを使用して、同一ファイル内で定義をインクルードすることができます。

file.puというファイルの例です:

🎉 Copied!

@startdef(id=macro_def_id)
Alice -> Bob : hello1
@enddef

@startuml
!includedef macro_def_id
Alice -> Bob : hello2
@enduml

これに対応する出力結果file_001.pngは次のようになります:

🎉 Copied!

@startuml
Alice -> Bob : hello1
Alice -> Bob : hello2
@enduml

[Ref. QA-5769]

他のツールのためのオプション

{}で囲むことで、他のツールで使用するためのオプションを追加することができます。

最初の<filename>だけが、PlantUMLに関係しています。それ以降はすべて無視されるので、他のツールで使用することができます。

@startuml{filename.png, This is my other caption text, width=16cm, option_for_other_tools=value}

@enduml

[Ref. QA-1466]

Adding output format when using pipe mode

⚠ Restriction: Only available when using pipe mode.

To specify the output format (PNG, SVG, ATXT or UTXT), on pipe mode, you can add this command on the input:

@@@format png

or

@@@format svg

or

@@@format UTXT

[Ref. QA-10808, GH-1810]

Put PlantUML directives on programming source code [@pause, @unpause and @append]

You can put plantuml directives on comments of programming source code by using the keyword:
  • @pause
  • @unpause
  • @append

Here is an example:

/// My FSM looks like this:
/// @startuml myfsm
/// title My Finite-state machine
/// @pause

enum {
   // @append state AA
   STATE_AA,
   // @append state BB
   STATE_BB,
};

struct fsm my_fsm = {
    // @append [*] -> AA: Event 1
    { STATE_ENRTY, EVENT_1, STATE_AA },

    // @append AA -> BB: Event 3
    { STATE_AA, EVENT_3, STATE_BB },

    // and so on with a bunch of transitions...
};
/// @unpause
/// @enduml

Here is the corresponding diagram generated from the previous input:

[Ref. QA-1525, QA-5793]


Privacy Policy      Advertise