Javaはサーバサイドだけでなく、デスクトップ開発でも利用できます。速度面などに難があって利用は伸びませんが、かつては多くのデスクトップソフトウェアがJavaで作られていました。 そんなJavaには多くの先進的試みがありました。JHotDrawというJavaによる2Dドロー技術もその一つで、今回紹介するHotdraw.jsはそんなJHotDraw(バージョン5.1)をJavaScriptにポーティングしたソフトウェアです。

Hotdraw.jsの使い方

自由にドローやテキストの追加ができます。

描いたオブジェクトを移動、画像の追加もできます。

オブジェクトの上に文字を重ねた例。

Hotdraw.jsではオブジェクトを描いたり、線を引いたりすることができます。それらはオブジェクトなので後から移動したりすることもできます。描画がSVGベースなのがHTML5ならではの変更点です。オブジェクト同士を線でつなぐこともできるようなのですが、やり方が分かりませんでした。画像はデモでは一種類だけですが、カスタマイズすれば自由に選択できるように変更できるでしょう。

Hotdraw.jsはJavaScript製のオープンソース・ソフトウェア(MIT License)です。

Hotdraw.js websemantics/Hotdraw.js: Hotdraw.js is a port of JHotDraw version 5.1. It is based on Erich Gamma’s JHotDraw, which is copyright 1996, 1997 by IFA Informatik and Erich Gamma.The implementation of Hotdraw.js has showed us the possibilities of porting Java applications to Javascript and SVG. I hope that this will open the doors to recruit ideas and port applications from Java to SVG