プログラムを中心とした個人的なメモ用のブログです。 タイトルは迷走中。
内容の保証はできませんのであしからずご了承ください。

ラベル PlantUML の投稿を表示しています。 すべての投稿を表示
ラベル PlantUML の投稿を表示しています。 すべての投稿を表示

2018/03/15

Visual Studio Code で Markdown 内に記述した PlantUML のライブプレビューを行う

2017/10/25

GitLab を PlantUML に対応させる

event_note

2017/09/26

PlantUML サーバーを docker-compose で動かす

event_note

2016/11/03

PlantUML で出力フォーマットに応じて処理を分ける

event_note

PlantUML にはプリプロセッサの機能があり、C言語と同じように定数定義や ifdef などが使用できます。
これを使用し、以下のように出力フォーマットに応じて処理を分けてみます。

  • PNG で出力する場合には newpage により画像を分割して出力する
  • PNG 以外で出力する場合には画像を分割しない

定数の定義の仕方

PlantUML のコード上では、以下のように定義します。

!define _PROJECT_NAME_ ProjectName

また、コマンドライン引数でも定数は定義できます。

> plantuml.jar -DPNG="png" hoge.puml

-D が定数定義するオプションで、その後に続く文字が定義する文字列です。
つまり、上記は以下の定義と同じ意味です。

!define PNG "png"

これで、上記のようにコマンドライン引数で定数を定義しつつ、PlantUML 内のコードに以下のように記述すれば、PNG で出力するときのみ画像が分割されることになります。

!ifdef PNG
newpage
!endif

参考URL

2016/10/19

Sphinx に PlantUML のコードを埋め込む

event_note

PlantUML のコードを Sphinx ドキュメントに埋め込むための方法です。
ただし、Atom を使用したプレビュー機能が使えなくなるので、微妙かもしれません。

sphinxcontrib.plantuml のインストール

easy_install sphinxcontrib-plantuml

conf.py の設定

conf.py に以下の設定を追加します。
plantuml.jar のパスは適宜変更してください。

# sphinxcontrib.plantuml モジュールを読み込む
extensions = ['sphinxcontrib.plantuml']

# PlantUML の起動方法を設定する
plantuml = 'java -jar BAT/plantuml.jar'

尚、他のモジュールを読み込んでいる場合は、以下のように記述します。

extensions = ['rst2pdf.pdfbuilder','sphinxcontrib.plantuml']

記述方法

UML ディレクティブを使用して記述します。

.. uml::

   Alice -> Bob: Hi!
   Alice <- Bob: How are you?

参考