| ▲ | sathomasga 4 days ago | ||||||||||||||||||||||
Same use case (math-heavy, no-javascript blog), but I ended up with a _slightly_ different approach: instead of converting to SVG, convert to MathML. Browser support is pretty robust, and the output is much nicer (e.g. preserves fonts). | |||||||||||||||||||||||
| ▲ | icpmoles 4 days ago | parent | next [-] | ||||||||||||||||||||||
In my experience the MathML support is still mediocre, especially on Chrome. | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | bArray 4 days ago | parent | prev | next [-] | ||||||||||||||||||||||
Same here [1], I chose MathML as it worked out of the box in some browsers at the time. For browsers not supporting MathML I also have this ~80kB (~12kB compressed) library for converting it [2]. I tested your equation:
It could not do the definition, so it ended up being:
I did previously also load the LaTeX equation font, but I decided it used a lot of resource for little gain in the end.I was also looking at your recent blog [3], and one thing that I like about mine is that the code you see is what is run to produce the output [4]. I am in the middle of making the code interactive too, so that you can re-compile it within the web page and run different parameters to produce different outputs. [1] https://coffeespace.org.uk/projects/mathml-render.html [2] https://github.com/pshihn/math-ml [3] https://sathomas.me/blog/robuststats/ [4] https://coffeespace.org.uk/projects/wavefront-algorithm.html | |||||||||||||||||||||||
| ▲ | bobbylarrybobby 4 days ago | parent | prev | next [-] | ||||||||||||||||||||||
What does it mean that it preserves fonts? Presumably the body font on my website won't also support math typesetting, right? Or at least, not in a way that's as nice looking as the tex default? | |||||||||||||||||||||||
| ▲ | randomtoast 4 days ago | parent | prev | next [-] | ||||||||||||||||||||||
MathML is part of HTML5 and standardised by ISO/IEC since 2015. It is supported by all major browsers and supports voicing as well as braille output. This is the way to go. | |||||||||||||||||||||||
| ▲ | __rito__ 3 days ago | parent | prev | next [-] | ||||||||||||||||||||||
The equation number is overlapped with the equation. Tested with Cromite, Firefox on Android. | |||||||||||||||||||||||
| ▲ | JadeNB 4 days ago | parent | prev | next [-] | ||||||||||||||||||||||
Also preserves more semantic information! | |||||||||||||||||||||||
| ▲ | ttd 4 days ago | parent | prev [-] | ||||||||||||||||||||||
I still haven't found a way to coax MathML into looking the way I want it... Even using the same fonts (like Computer Modern or its descendants) there's still something not quite the same as LaTeX-drawn math. It's a nitpick but noticeable for me. | |||||||||||||||||||||||