DOSEIの日記

技術メモ+日常ログ

Firefox の MathML フォント設定

以下 %fx%Firefox のインストールパスを表す。

MathML のスタイル

  • %fx%\res\mathml.css

61 行目で、デフォルトのフォント (CMSY10 など) が指定されてる。空白を含むフォント名なのにクオーテーションされてないなぁ…。

しかし、一部の記号は

  • %fx%\res\fonts\mathfont.properties

でフォントが指定されている。コメントによると、「より安全に(確実に)表示できる」ようにらしい。

"≤", "≥", "−" は、 Symbol が指定されている。

指定の仕方は、
font.mathfont-family.character.base, font.mathfont-family.character.variant, font.mathfont-family.character.parts を設定する。

.variant はその文字の大きいもの (larger size), .parts は文字を組み立てるためのフォントをそれぞれ指定(よく意味わからんが)。

ストレッチ (stretchy)

括弧やインテグラルなど、内容によって伸縮する必要がある文字は、いくつかの部分に分割してレンダリングされる。
まず、フォントが斜体などにならないように、 mathml.css の 411 行目以降で ::-moz-math-stretchyfont-style: normal; が指定されている。
んで、 operator.character.form によって stretchyvertical または horizontal を指定されていると、この文字は伸縮がされる。前述の方法で指定されているフォントに対応する mathfontfontname.properties ファイル内で部分文字コードが指定される。ストレッチは、両端部分(T/L と B/R) と中央 (M), そしてその間をつなぐ伸縮部分 (G) が指定されている。stub