ダイアグラムを直接PDF形式で出力する機能の要望が以前からありました。 しかし残念ながら、これは簡単なことではなく、いくつかの外部ライブラリ(
Batikと
FOP)も必要でした。
これは、
plantuml.jar
が大きくなりすぎないようにして、他の製品との統合を容易にしたいという要望に反するものです。
そこで、ある種の動的リンクを利用して、これらのライブラリがなくてもコンパイルや実行が行えるようにしました。まず、SVGファイルが生成され、その後PDFに変換されます。
PDFエクスポート時には、影の描画について問題がある場合があります。
それを無効化する方法が、こちらに書かれています。.
デフォルト状態ではPDFの生成はできません。これでも、大多数のユーザのニーズを満たしているでしょう。
PDF機能を使いたい場合、以下のファイルをダウンロードする必要があります:
- avalon-framework-4.2.0.jar
- batik-all-1.7.jar
- commons-io-1.3.1.jar
- commons-logging-1.0.4.jar
- fop.jar
- xml-apis-ext-1.3.04.jar
- xmlgraphics-commons-1.4.jar
これらのファイルを
Batikと
FOPのウェブサイトからダウンロードします。
テストを目的として、これらのファイルをまとめたzipが
こちらにあります。
これらのファイルは、
plantuml.jar
と同じフォルダに配置する必要があります。
以上の準備を行うと、コマンドラインで
-tpdf
フラグが使えるようになります:
java -jar plantuml.jar -tpdf diagram.txt
もしくは、Antタスクで
format="pdf"
が使えます:
<!-- task definition -->
<taskdef name="plantuml" classname="net.sourceforge.plantuml.ant.PlantUmlTask" classpath="plantuml.jar" />
<!-- process diagram.txt file -->
<target name="images">
<plantuml format="pdf">
<fileset file="diagram.txt" />
</plantuml>
</target>