![]() The OS/2 values in the generated fonts were incorrect, so this corrects them. To do this, I added some files to the khan/MathJax-dev repo, and updated the dockerfile to use the new repo. Test Plan: - View the test page with chrome and firefox on linux, chrome and safari on mac, and IE8 and IE9 on windows, and see that none of the characters are clipped. Auditors: alpert |
||
---|---|---|
.. | ||
Dockerfile | ||
README.md |
How to generate MathJax fonts
It's really simple (now)! Just make a docker image from the included Dockerfile using a command like
sudo docker build --tag=mathjaxfonts .
from within this directory (note you need to have docker installed and running for this to work). This will build a docker image with the mathjaxfonts tag, which you can then use to run dockers based on them. Then, run a mathjaxfonts docker with
sudo docker run --interactive --tty mathjaxfonts --name mjf /bin/bash
We name this docker "mjf" so we can reference it later when we want to copy the files off. (If you get an error about the name being in use, perhaps because you are trying to create another docker, you can either delete the old docker with
sudo docker rm mjf
or use a different name.) This will get you into the docker in the root
directory. From there, cd into the /MathJax-dev/fonts/OTF/TeX
directory, and
run
make ttf eot woff
to build all of the fonts that we need. Finally, leave the docker and copy all the files off with
docker cp mjf:/MathJax-dev/fonts/OTF/TeX/ttf ./ docker cp mjf:/MathJax-dev/fonts/OTF/TeX/eot ./ docker cp mjf:/MathJax-dev/fonts/OTF/TeX/woff ./
(note we're using mjf:
to specify the name of the docker we created above)
Compile the fonts into a single directory
mv {ttf,eot,woff}/* ./
Remove the WinIE6 and WinChrome fonts
rm KaTeX_Win*
And you're good to go! Don't forget to update the font metrics with the metric_parse.rb script once you're done.
General Docker Help
When you quit the docker, it will stop the docker from running. If you want to reattach to the docker, you can start it again with
sudo docker start mjf
and then attach with
sudo docker attach mjf
Alternatively, if you want to detach from the docker when you're done instead of
quitting and stopping it, you can detach with C-p C-q
, and then re-attach with
sudo docker attach mjf
To see a list of your current dockers, you can run
docker ps