New Features

MathJax: Now Available on PressbooksEDU

By |

We’re happy to announce the much-awaited arrival of full support for MathJax on PressbooksEDU networks! 

MathJax is a JavaScript display engine that translates mathematical markup into high resolution, accessible equations that can render in any supported book format on Pressbooks. Equations in exported formats will also display in SVG, or scalable vector graphic format, meaning they’ll look great no matter the export format or text size. In the webbook, all of your mathematical equations will now also be equipped with the accessibility features available from MathJax. 

MathJax is compatible with three different forms of input notation: LaTeX, AsciiMath, and MathML. 

LaTeX

In the past, we’ve used our PB LaTeX plugin as the default method to render mathematical notation, with optional, book-level support for the WP QuickLaTeX plugin. With this change, we’re officially retiring the PB LaTeX plugin on all networks. Our educational networks will now use the new MathJax solution by default, with WP QuickLaTeX as a secondary, book-level option. Pressbooks.com and non-EDU networks will now use WP QuickLaTeX as the network default. Advantages of QuickLaTeX include the option to generate SVG images instead of PNG files, greater ability to customize the size and color of mathematical expressions, and advanced settings that allow users to define new commands, packages, and give them greater control over syntax rules. For more information on using QuickLaTeX and its advanced features, see our Guide. 

Already written your book’s equations in PB LaTeX? No sweat. Anything you’ve written using the [latex] shortcode [/latex] syntax will display in MathJax (if you’re on an EDU network) or in QuickLaTeX. 

The inline syntax ($latex a^2$) is also backward compatible with MathJax. 

If you’ve used $$double dollar sign syntax$$ to write your math, however, you’ll need to either replace these tags with supported MathJax syntax or enable QuickLaTeX to render these equations. 

Activated QuickLaTeX but want to change to MathJax? You may need to change the syntax used to draft your equations before they can be compatible with MathJax. As mentioned above, anything wrapped in [latex] shortcode [/latex] syntax will render fine, but if you’ve drafted using any of QuickLaTex’s inline syntaxes or have made use of the [latexpage] shortcode, you will need to make changes to your LaTeX so that it is compatible with the supported syntaxes for MathJax. Check out our Guide for more information which syntaxes are supported. You can also choose to continue to use QuickLaTeX instead. 

Please note that if you depend on defining new commands or using additional LaTeX packages, you’ll want to continue using the QuickLaTeX plugin, which allows users to define these with the plugin’s advanced settings. 

See how to start creating your book with MathJax LaTeX here

AsciiMath & MathML

Pressbooks now supports two more mathematical equation syntaxes with MathJax: AsciiMath and MathML. If you’d like to know more about the AsciiMath mathematical markup language, see AsciiMath.org. Check out MathML here

You can see how to draft your AsciiMath and MathML equations in Pressbooks here

Accessibility Features

One of the best parts of MathJax is the accessibility features your readers have access to while they’re using your online textbook. This includes:

  • Automatic magnification on hover
  • Text-to-speech options 
  • Collapsible math
  • Highlight, foreground, and background customization

Other Features

MathJax offers readers great control over the way math and math settings display in the book they’re reading. Some options include:

  • The ability to translate math into other syntaxes
  • MathJax options in over 20 languages

See the full extent of MathJax’s accessibility features in their documentation

More on MathJax

MathJax was created by Davide Cervone and Voker Sorge, with support from the American Mathematical Society and the Society for Industrial and Applied Mathematics. If you’d like to learn more about MathJax, you can check them out here.