text要素のSpec

text要素のSpecを作成しています

現在、text要素関連のSpecを書きながら、テストを繰り返していますが、一つ、わかったことがあります。

SVGTextContentElementインターフェース

前々から疑問に思っていたのですが、SVG1.1のtext要素には、SVGTextContentElementインターフェースとSVGTextPositioningElementインターフェースの二つのAPIが用意されています。この二つは親子関係に当たるようです。しかし、わざわざ、二つに分ける意味がわからないまま、SIEの実装をしてしまいました。
Specを書いてみると、SVGTextContentElementはフォントの字詰め処理やアドバンスをもっぱら担当しており、x属性などの位置設定は、SVGTextPostioningElementの方で処理するように、二つのインターフェースで役割分担ができているのだと気づきました。二つに分けることで、責任が明らかとなって、その結果、コードもシンプルとなるのです。

コードの実装について

ひとまず、コードは今のままで開発を進めていきます。折を見て、上記のような方向にコードの記述を変えていければいいなと考えています。