Mathematical Open Type fonts
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, you can obtain one at http://mozilla.org/MPL/2.0/.
This repository contains a script to fetch various open source OpenType fonts
with a MATH table as well as the corresponding fonts to use for the surrounding
text (if any). The fonts are converted into WOFF (with zopfli compression) and
WOFF2 formats using
fonttools, which may perform additional
optimizations. It is expected that all the transformations preserve
and so Reserved Font Names remain unchanged. The fonts are finally
some documentation, a license and a
mathfont.css stylesheet, so that you can
easily use them on your Web site. Some proprietary fonts as well as incomplete
open source fonts are also listed but they are not provided.
Note that only Gecko and WebKit have (more or less complete) support for MathML and the OpenType MATH table. The WOFF2 format is not supported by all web rendering engines. Also some (but not all) of the fonts provide old style numbers and calligraphic letters accessible via OpenType font features. Some CSS rules from the CSS Fonts Module Level are provided to help selecting the corresponding glyphs, but these are not implemented/enabled in all browsers yet. In general, it is recommended to try the most recent versions of browsers.
The following open source math fonts have issues and are not provided yet:
- The Neo Euler font has design issues and has never been released.
- The development version of GNU Free fonts contains an OpenType MATH table but this is not available in the release yet.
Using Math fonts on your Web site
Choose one family for your web site and place the corresponding subdirectory
Make your pages link to the
mathfonts.css stylesheet. The MathML formulas
will then render with the specified font. It's good to make them consistent
with the surrounding text, especially for inline expressions. To do that,
htmlmathparagraph class, e.g.
By default, the local fonts installed on the system will be used. For open
source fonts, Web fonts in WOFF2 or WOFF format will be used as a fallback.
Most families provide old style numbers in the text font. You can use them via
oldstylenumbers class, e.g.
<span class="oldstylenumbers">0123456789</span>. Some of the math fonts also
provide calligraphic style for the script characters, that you can select
calligraphic class e.g.
<math><mi mathvariant="script" class="calligraphic">A</mi></math> or
make clean to remove intermediary files and
make distclean to remove
all the files that are not tracked on GitHub.