みなさん明けましておめでとうございます。日本Linux協会の野首です。今年もよろしくお願いいたします。
このブログでは技術的な話題も書いてゆこうと思っているのですが、今回は pisaというソフトウェアを紹介してみようと思います。
pisaはHTMLを直接PDFに変換するもので、Pythonで記述されたオープンソースソフトウェア (QTライセンス)です。また、商用利用の為に別途リライセンスもしています。開発元は spirito GmbHというドイツの企業です。
私がこのソフトウェアの存在を知ったのは昨年の11月7日なのですが、時系列をみるとどうやら MOONGIFTというブログの紹介記事「 MOONGIFT: ? Python上でHTML2PDF「pisa」:オープンソースを毎日紹介 」が回りまわって伝わってきたという感じです。
残念ながらこのソフトウェアはISO-8859-1向けなのですが、試行錯誤を重ねてなんとか 日本語を表示させることができるようになりました。 といっても、pisaが使っているライブラリReportLab 、HTML5lib がどちらもCJK対応なされていたからできたようなものですけれども。
私はPerl、Rubyなどに比べるとPythonに関してはいまいち習熟度が足りません。そのため、 結構時間を費やす羽目になりました。その際に役に立ったのは、Pythonがもつ強力な セルフドキュメントとインタラクティブ実行環境、デバッガです。
コマンドラインからpythonと入力するだけでインタラクティブモード(Rubyでいうirbのようなもの) が動作しますし、オブジェクトのメソッド一覧はdir()で取得できます。またemacs lispの docstringと同様の機構を持っており、help()を使うことでそれらを参照できます。
そのおかげで、ソースコードを読むことと、実行時の挙動を調べることでなんとか自分の目標 (日本語化)を達成できました。 パッチと解説はhttp://www.daionet.gr.jp/~knok/trac/trac.cgi/wiki/pisa-l10n に記しました。次の目標はこれを開発元にコミットすることです。
新年早々、よいハックができました。今年もがんばってゆきたいと思います。
Techno Exchange
DELL連載第4回 〜「Microsoft System Center」
ZDNet Japan ホスティング特集
ZDNet Japan Green IT
契約してわかった、iPhoneのさまざまな注意事項
フォトレポート:USIMカードはどこに?--「iPhone」開封の儀
iPhone 3G、発売前夜から祭りのあとまで