2.11. SphinxでのPlantUMLの利用#
Sphinxに sphinxcontrib-plantuml を導入することで、PlantUMLの入力データをsphinx 文書の中に 取り込むことができます。この文書でもこの方法を使っています。
.. uml::
@startuml
Alice -> Bob
@enduml
のように ディレクティブ uml
の中にPlantUMLのソースコードを記述します。
uml
は figure
ディレクティブと同じオプションが使えます。
また PlantUMLのファイル名を uml
の引数として与えることも可能です。
.. uml:: _diagram/AliceBob.uml
sphinx の conf.pyには以下のような設定を追加します。 plantuml_jar
にはインストールした PlnatUML の jarファイルのパスを指定します。
extensions.append('sphinxcontrib.plantuml')
plantuml_jar = '/opt/src/plantUML/plantuml-1.2024.6.jar' # GLPv3 version
plantuml_java_options=" ".join([
"-DPLANTUML_LIMIT_SIZE=8192",
"-Djava.awt.headless=true", #
])
# sphinxcontrib-plantumlのオプション
plantuml = f"java {plantuml_java_options} -jar {plantuml_jar}"
plantuml_output_format="svg_img",
plantuml_latex_output_format="png",
# plantuml_epstopdf="epstopdf", # TeXLive
# plantuml_cache_path="_plantuml" ,