blockdiagシリーズをインストール

作成が面倒なブロック図やネットワーク図などを
テキストから簡単に生成してくれるblockdiagシリーズ。

面白そうだったので使ってみました!

以下、インストール手順です。

環境

Mac OS X 10.6.8

インストール手順

sudo port install freetype libpng jpeg
sudo easy_install pip
sudo pip install pil
sudo pip install blockdiag nwdiag seqdiag actdiag

上記でインストールは完了です!

ただ、最初に入れた時は
freetypeを入れずに実施してしまったために
下記エラーが出てしまいました。。

Traceback (most recent call last):
  File "/usr/local/bin/nwdiag", line 8, in 
    load_entry_point('nwdiag==0.2.7', 'console_scripts', 'nwdiag')()
  File "/Library/Python/2.6/site-packages/nwdiag/command.py", line 113, in main
    draw.draw()
  File "/Library/Python/2.6/site-packages/nwdiag/DiagramDraw.py", line 53, in draw
    super(DiagramDraw, self).draw()
  File "/Library/Python/2.6/site-packages/blockdiag/DiagramDraw.py", line 112, in draw
    self.node(node, **kwargs)
  File "/Library/Python/2.6/site-packages/nwdiag/DiagramDraw.py", line 82, in node
    fontsize=self.metrix.fontSize)
  File "/Library/Python/2.6/site-packages/blockdiag/imagedraw/png.py", line 268, in textarea
    lines = TextFolder(box, string, scale=self.scale_ratio, **kwargs)
  File "/Library/Python/2.6/site-packages/blockdiag/utils/PILTextFolder.py", line 27, in __init__
    self.ttfont = ImageFont.truetype(font, fontsize)
  File "/Library/Python/2.6/site-packages/PIL/ImageFont.py", line 218, in truetype
    return FreeTypeFont(filename, size, index, encoding)
  File "/Library/Python/2.6/site-packages/PIL/ImageFont.py", line 134, in __init__
    self.font = core.getfont(file, size, index, encoding)
  File "/Library/Python/2.6/site-packages/PIL/ImageFont.py", line 34, in __getattr__
    raise ImportError("The _imagingft C module is not installed")
ImportError: The _imagingft C module is not installed

使ってみよう!

test.diagファイルを用意して下記コードを記述します。

diagram {
  orientation = portrait

  A -> B -> C;
       B -> D;
}

実行!

blockdiag --font=/Library/Fonts/Osaka.ttf --antialias test.diag

すると下記画像[test.png]が生成されます。

素晴らしい!