StrokeFontをつくる(2)

とりあえず、ひらがなが終わった。これをテストデータにして、Squeakでの表示を目指す予定。
Inkscapeで作成した文字をXMLParser(http://www.squeaksource.com/XMLSupport)を使って、パス情報を得る。Inkscapeでは書いた順に格納されるようなので、その順番と入力した文字を対応付けて登録する。登録したパスデータから(今回作成予定の)StrokeFontクラスでFormオブジェクトを作成する。以下のSmalltalk式でInkscapeで書いた文字のパスを得る。予め1文字のパスはグルーピングしてあるが(下記青文字部分)、Inkspaceでは1ストロークの文字はグルーピングされないので、下記例のようにg要素ではなく、path要素が出現する。

aXMLDocument
aXMLDocument:= XMLDOMParser parseDocumentFrom: (FileStream fileNamed: 'hira.svg'). (aXMLDocument topElement elementAt: 'g') elements
    • > an OrderedCollection(
"←1ストロークの文字" 以下省略