« HTML + CSS で数式組版 (その11) | トップページ | HTML + CSS で数式組版 (その13) »

2009年3月29日 (日)

HTML + CSS で数式組版 (その12)

垂直方向の位置を決める問題。

というのは、例えば以下のような式があったとしまして:

x = \frac{a}{b} + c

分数の前後にある文字の位置を、分母と分子の間まで下げたいわけです。

もっと、嫌らしい例を挙げますと:

\frac{1}{1 + \frac{1}{2}} + a + \frac{\frac{1}{2} + 1}{1 + \frac{1}{2}}

まず、真ん中の a をどれだけ下げればよいか、というのは、その後ろの分数の分子の高さで決まります。この分数は、分子にさらに分数が入っていますので、その高さはその分数の、 分子の高さ + 分母の高さ ということになります。

次に、先頭の分数を下げる量を考えます。この分数の分子には、分数が入っていませんので、後ろの分数の方が高さが大きくなり、その差は、後ろの分数の分子の分数の分子の高さ、ということになります。よって、先頭の分数は、これだけを下げることとなります。

この例からわかることをまとめますと:

  1. 分数でない要素を下げる量は、式中の分数の分子の高さの最大値
  2. 分数である要素を下げる量は、 1. より、その分数の分子の高さを引いた値

最後に、分数の分母分子の中に分数がある場合には、その分母分子の中についても同様に位置を下げる必要があります。

さて、そうすると、やらなければならない処理は:

  1. 分数の分母分子の高さを求める
  2. 分子の最大の高さを求める
  3. 分数でない要素を下げる量を 2. とする
  4. 分数である要素を下げる量を 2. から分子の差とする

と、いうことになりますかね。

|

« HTML + CSS で数式組版 (その11) | トップページ | HTML + CSS で数式組版 (その13) »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/80472/28857404

この記事へのトラックバック一覧です: HTML + CSS で数式組版 (その12):

« HTML + CSS で数式組版 (その11) | トップページ | HTML + CSS で数式組版 (その13) »