Improved Support for Mathematical & Scientific Notation

@EDU_Managers & Pressbooks Community Members! We’re thrilled to announce that we’ve made it easier than ever before for authors to write and display mathematical and scientific notation in Pressbooks using our built-in LaTeX/MathJax solution. This update applies to both SaaS and open source versions of Pressbooks.

What’s New?

  • More Delimiters: You can now use ( … ), [ … ], and $$ … $$ in addition to the existing [latex] and $latex shortcodes.
  • Expanded Package Support: We’ve added support for several commonly used LaTeX packages, including AMS math, chemistry formulas, physics notation, color formatting, and more.
  • Full support for EPUB and PDF exports: Expressions will be automatically rendered as accessible images in offline export files where MathJax is not available (like PDF and EPUB).
  • MathJax upgrade: Expressions will now be rendered in the browser using MathJax 3, which includes several improvements

What This Means for You

If you’ve been writing math or scientific notation in Pressbooks, you’ll find it easier to use familiar LaTeX syntax. Supported expressions will render properly everywhere with no extra work or configuration required.

If you or your authors activated the WP Quick LaTeX plugin in order to use additional features that were not previously available in the native Pressbooks solution, you should consider deactivating that plugin to see whether the native solution now meets your needs.

To learn more about the different methods for rending math in your book, see our updated guide chapter. If you have previously published guides for your local users, consider updating them with this new information.

Help us Continue Improving

Our team is currently conducting user research with power users in STEM disciplines in order to prioritize future improvements. If you or any of your Pressbooks-using creators would like to participate in a research interview on this topic, please book a 30-minute session with our team.

1 Like

Self hosted network managers and open source users – you can find the updates in our pb-mathjax repo. Instructions for installing and deploying have been updated in the repo readme: GitHub - pressbooks/pb-mathjax: A replacement for wp.com/latex.php but instead of LaTeX, it uses MathJax.

1 Like

@Julie

Such an exciting announcement. I think the most exciting thing about the shift from MathJax 2.7 → 3.2 is the potential for innovation this creates.

One of the problems with MathJax 2.7 was how complex it still was for end users of assistive technology. While MathJax 2.7 technically made math accessible because it embedded the Assistive MathML behind the scenes, it really only worked with exactly the right screenreader using exactly the right settings. Even professional screenreaders like JAWS or NVDA used to require additional plugins like MathPlayer or additional help to read the math.

MathJax 3.2, the math to text engines have been integrated directly into MathJax itself. This is important, because MathJax itself can help generate the Alt Text for a screenreader. Previously, MathJax just embedded Assistive MathML and relied on the end user to have the technology to convert that Assistive MathML to alt text. The simplification of embedding the accessibility libraries directly into MathJax should allow some of the more lightweight screenreaders purchased by institutions to work.

It might also be important to Pressbooks. Wouldn’t it be nice if our PDF exports with math could be made accessible on export? Previously that wasn’t possible, so we would have to direct users of assistive technology to the online version because it would be the most accessible for them, but the migration to a modern version of MathJax might make further innovation possible.

Another development I’ve been following closely is the release of the PDF UA-2 standard. Currently, we use the PDF UA-1 standard for Digital PDF exports. PDF UA-2 includes support for MathML in a PDF. So now I’m watching release notes for PrinceXML to see when they will support the PDF UA-2 standard (not yet).

So I’m excited for what comes next from Pressbooks and Math Accessibility! Thank you Pressbooks team.

4 Likes

@SteelWagstaff

I wanted to share how SUNY’s self hosted network was using pb-mathjax.

We use a very simple wrapper around Pressbooks open source code so that we can run pb-mathjax in a docker container.

In the pb-mathjax readme, there are two official approaches to running pb-mathjax.

  1. Option 1 is the microservice option. It works well for stand-alone Pressbooks servers and you install all the dependencies for MathJax right on the same server.
  2. Option 2 is running the service on Amazon.

We chose option 3. Run a separate server, which has the benefit of not needing to complicate the Pressbooks server or install additional dependencies on the Pressbooks server. Running a dockerized version gives us more flexibility than being required to run it on Amazon.

If you share this github repo with your system administrator, its a very simple docker compose file that will set up a NodeJS server with nginx. The dockerfile just syncs to the most recent version of pb-mathjax each time it restarts. The maintainer of this simple wrapper around pb-mathjax is Taylor Jadin from Reclaim hosting. I hope it helps another open source user!

Ed

4 Likes

@beckej Thanks so much for the information you’ve shared here. We are excited to finally be making these improvements to how we support mathematical & scientific notation and we appreciate your enthusiasm for this work.