Fonts used by KaTeX and scripts to generate fonts
Clone or download
ylemkimon and kevinbarabash Improve fonts generation: use fonttools to generate (reproducible) fo…
…nts (#54)

* Upgrade fonttools to 3.28.0

* Use fonttools to...

* set created/modified timestamp
* remove fontforge timestamp(FFTM) and GDEF table
* set font version
* fix metrics
* generate WOFF, WOFF2

* Add Space.otf to .gitignore

* Build fonts

* Remove unused tools

* Update CircleCI config

* Update Docker image
Latest commit 93cbc5f Sep 4, 2018

How to generate KaTeX fonts and metrics

Originally based on MathJax font generation


The script should do everything automatically, as long as Docker is installed.

If you want to try out a change to the MathJax-dev repository, create a local clone (or download and unpack the ZIP file) and specify the path to this directory as an argument to You can also specify a local or remote tarball, e.g. a GitHub download of your own personal feature branch.

The script automatically creates Docker images from the supplied Dockerfile. It uses the hash of the file to tag the image, so a change to the file will result in the creation of a new image. If you want to see all created images, run docker images katex/fonts. To remove all generated images, you can run docker rmi $(docker images --format '{{.Repository}}:{{.Tag}}' katex/fonts).


The script generates metrics (dimensions of each character) for the generated fonts. See detailed requirements for running this script.

If there is a problem, file a bug report.