>>960
メイリオにしてます。全角文字は等幅のようですが、半角はプロポーショナルらしいので、
1文字の幅が一定という前提で計算することはできません。

そんなわけで、文字列は基本的に行ごとに格納しています。ルビの場合はそこで分割。
1行目、2行目A、2行目B(ルビ付)、2行目C、3行目のような感じで。
フォントクラスは改行文字も処理できるので、1行目と2行目Aはくっつけてもいいかもしれませんが。

>どうせやるんなら自分で考えたほうが自分のためになるよ。
頑張って自分で組もうとしてみました。
行末に禁則文字があった場合は、後ろの1文字も含めて次の行に送り出すようにしてみましたが
ルビ→改行→句読点のようになっていると、句読点が行頭に出てきてしまったりします。
まぁ、そのうちなんとかなるでしょう

>>961
吉里吉里ってソース公開されているんですね。見てみます!
かなり本格的なシステムなようなので、読むのが難しそうですが・・