blockdiag の概要

機能

  • テキストファイルからブロック図を生成
  • 日本語(UTF-8)対応
  • Sphinx 文書への埋め込み (sphinxcontrib-blockdiag パッケージの利用)

インストール

Windows の場合

easy_install コマンドで依存パッケージをインストールします。

$ easy_install pillow

また、Pillow が依存している「Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ」をインストールします。 32ビット版64ビット版 が存在するため、 環境に合わせて適切なものをダウンロードしてください。

その後、easy_install コマンドにて blockdiag をインストールします。

$ easy_install blockdiag

注釈

Sphinx-users.jp で配布されている スタンドアロンインストーラ を利用すると 簡単に Python, Sphinx, blockdiag シリーズを簡単にインストールすることができます。

スタンドアロンインストーラの詳細は こちら をご覧ください。

Windows (Cygwin) の場合

setup.exe で依存パッケージのビルドに必要な gcc4 と libmpfr4 をインストールします。

その後、easy_install コマンドで依存パッケージと blockdiag をインストールします。

$ easy_install pillow
$ easy_install blockdiag

Debian 6.0 (Squeeze) の場合

apt-get コマンドで依存パッケージをインストールします。

$ sudo apt-get install python-imaging ttf-ipafont

その後、easy_install コマンドにて blockdiag をインストールします。

$ sudo easy_install blockdiag

注釈

easy_install の代わりに pypi-install コマンドを利用すると blockdiag を Debian パッケージとして管理することができます。

pypi-install コマンドは python-stdeb パッケージに含まれているので、 お好みに合わせてお使い下さい:

% pypi-install funcparserlib
% pypi-install webcolors
% pypi-install blockdiag

CentOS 5.5/5.6 の場合

yum コマンドで依存パッケージをインストールします。 なお、CentOS 付属の PIL (python-imaging) パッケージは setuptools に対応していないため、手動で egg-info を作成します。

$ sudo yum install python-setuptools python-imaging fonts-japanese
$ sudo touch /usr/lib/python2.4/site-packages/PIL-1.1.5.egg-info

その後、easy_install コマンドにて blockdiag をインストールします。

$ sudo easy_install blockdiag

CentOS 6.2 の場合

yum コマンドで依存パッケージをインストールします。

$ sudo yum install python-setuptools python-imaging ipa-gothic-fonts

その後、easy_install コマンドにて blockdiag をインストールします。

$ sudo easy_install blockdiag

MacOSX (MacPorts) の場合

port コマンドで依存パッケージをインストールします。

$ sudo port install py27-setuptools py27-pil

注釈

お使いの Python のバージョンに合わせて py2x の部分を変更して下さい。

その後、easy_install コマンドにて blockdiag をインストールします。

$ sudo /opt/local/bin/easy_install-2.7 blockdiag

注釈

Mac 標準でインストールされている easy_install コマンドを使用した場合 blockdiag は正しく動作しません。

PATH の設定や、フルパス指定するなどして MacPorts でインストールした easy_install を利用して下さい。

MacOSX (homebrew) の場合

brew コマンドで依存パッケージをインストールします。

$ brew install freetype

その後、easy_install コマンドにて blockdiag をインストールします。

$ easy_install blockdiag

FreeBSD (ports) の場合

portinstall コマンドで blockdiag パッケージをインストールします。

$ sudo portinstall graphics/py-blockdiag japanese/font-ipa

NetBSD (pkgsrc) の場合

blockdiag パッケージは pkgsrc に graphics/py-blockdiag として収録されています。 そのため、通常の pkgsrc の管理方法でインストールすることができます。

ここでは一般的な make を使った方法を紹介します。

$ cd /usr/pkgsrc/graphics/py-blockdiag
$ sudo make install

そのほかの環境の場合

以下のコマンドで blockdiag をインストールします。

$ sudo easy_install blockdiag

注釈

エラーが出る場合

blockdiag のインストール後、コマンドを実行した時に The _imagingft C module is not installed というエラーが出る場合、 PIL パッケージの再インストールを行なってください。 PIL パッケージが libfreetype2 にリンクされていない場合、上記のエラーが発生することがあります。

実行方法

ブロック図を生成するには blockdiag コマンドを起動します。

$ cp examples/simple.diag .
$ blockdiag simple.diag
$ ls simple.png
simple.png

SVG 形式や PDF 形式でブロック図を生成する場合は -T オプションを指定します。

$ blockdiag -Tsvg simple.diag
$ ls simple.svg
simple.svg
$ blockdiag -Tpdf simple.diag
$ ls simple.pdf
simple.pdf

フォント設定

blockdiag はブロック図の生成に TrueType フォントを利用します。 blockdiag は自動的に利用可能なフォントを取得しますが、 -f (–font) オプションにて特定のフォントで画像を生成することができます。

$ blockdiag -f /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf simple.diag

また、$HOME/.blockdiagrc ファイルに設定を書くことで 常に同じフォントを利用することができます。

$ cat $HOME/.blockdiagrc
[blockdiag]
fontpath = /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf

事前に入れておくべきソフトウェア

  • Python 2.6, 2.7, 3.2 および 3.3 以降
  • Pillow 2.2.1 以降
  • funcparserlib 0.3.6 以降
  • setuptools もしくは distribute.

ライセンス

Apache License 2.0