I would like to make (simple) mathematical presentations using mathjax. Most importantly I want to be able to let text show up step by step. Does anybody here know a program that would allow me to do this without too much hazzle ?

I'm afraid that this is not the right place to ask this, but as I think other mathematicians may find this question also interesting, I hope it is ok to ask it here.

  • $\begingroup$ well, i know that MS word has its own Equation functionalities. Google Docs also has their own...so they should work fine...however, yes i'm interested about mathjax outputs too. $\endgroup$ Mar 17, 2013 at 10:41
  • 4
    $\begingroup$ MathJax is a variant of $\LaTeX$ which complies $\LaTeX$ formulas via javascript together with HTML+CSS. It means that MathJax works only in web pages, which seems clearly inadequate for presentation purpose. I recommend you to learn about $\LaTeX$ and the beamer class, as mixedmath pointed out. $\endgroup$ Mar 17, 2013 at 10:47
  • 1
    $\begingroup$ I would try this: dl.dropbox.com/u/7586336/blogger/… RStudio is very convenient for using the knitr package, which allows Markdown to html conversion with MathJax. $\endgroup$ Mar 17, 2013 at 11:11
  • $\begingroup$ (and this a question for stackoverflow) $\endgroup$ Mar 17, 2013 at 11:35
  • 1
    $\begingroup$ Indeed, this is not the right place to ask this. I am sure there are mailing lists and/or other forms of user group fora for mathjax, no? (the argument "other X will find this interesting here" carries little weight, really! :-) Most mathematicians I know have a keen interest in beer and/or sex, say, but you'd be hard pressed to argue that that justifies asking here about either) $\endgroup$ Mar 17, 2013 at 20:22

6 Answers 6


Let me show you how the pros (admittedly, in other fields) do it:

Use any HTML/CSS/JS presentation library. For example, a nice one is reveal.js. Usually, they have a sample presentation to get you started.

Add a script pointing to MathJax's CDN or to a local directory (assuming that you might not have a decent Internet connection). For example, I added this at the bottom of the sample presentation of reveal.js:

<script type="text/javascript"

Then you're good to go. Write whatever you want to appear in LaTex-like format:

<div class="reveal">

    <!-- Any section element inside of this container is displayed as a slide -->
    <div class="slides">

             <h3>Latex Presentations Made Easy</h3>
                $$\frac{1}{n}\sqrt{e^\frac{1}{n} - e^\frac{1}{n+1}}\sim\frac{1}{n^2}$$
            <small>Created by <a href="http://hakim.se">Hakim El Hattab</a> / <a href="http://twitter.com/hakimel">@hakimel</a></small>

The result should be something like this:

enter image description here

In addition of this, reveal.js (and a bunch of other libraries) allow you to write your presentation in Markdown, quotes, snippets of code, link to other slides in your presentation, export your presentation to PDF, among other features.

  • $\begingroup$ Here is a similar example that uses deck.js instead, but is basically the same idea. It includes his template code so that might be worth looking at. checkmyworking.com/2012/10/… $\endgroup$ Mar 21, 2013 at 22:18
  • $\begingroup$ Yes, very similar to reveal.js. I like it. $\endgroup$
    – r_31415
    Mar 21, 2013 at 23:01
  • $\begingroup$ More easy with Pandoc (no need to have html knowledge). $\endgroup$ Mar 22, 2013 at 5:52
  • $\begingroup$ HTML knowledge is barely a problem but if that really worries you, reveal.js supports markdown. $\endgroup$
    – r_31415
    Mar 22, 2013 at 15:05
  • 1
    $\begingroup$ @RobertSmith Pandoc can be used by anyone who only knows how to type a post here. It allows conversion from Markdown to several types of html slides (slidy, slideous, dzslides, s5, and maybe it will include Reveal one day) and to Beamer too. $\endgroup$ Mar 22, 2013 at 22:41

Pandoc provides a very nice way to create slides with various formats from a basic Markdown source file. It is possible to have html slides and beamer slides (pdf output and/or LaTeX source code) from the same source code.

The freely available tool required: Pandoc

Here is the Markdown source file of the example I have just typed.

input.md file:

Slides with Markdown

# Contents

- Typing mathematics 

- Including a web application

# Typing mathematics 

Type mathematics as in `math.stackexchange.com` : $\int_0^1 f(x) \mathrm{d}x$

# Including a web application

Type the `html` source code you want:

<iframe src="http://glimmer.rstudio.com/stla/3Dsliced/" style="border: none; width: 500px; height: 700px"></iframe>

And here is a link to the html output file: output.html.

The html output file is obtained with Pandoc by typing the command line

pandoc -s -S -i -t slidy --mathjax input.md -o output.html

where ìnput.md is the name of the Markdown source file.

To get a beamer output type:

pandoc -s -S -i -t beamer input.md -o output.pdf

And here is the link to the pdf output file: output.pdf

To get the source LaTeX file producing the beamer pdf :

pandoc -s -S -i -t beamer input.md -o output.tex

More details about this procedure are availbale in the Pandoc documentation and from here.


It sounds to me that you want one of the ways of integrating latex into powerpoint. I've heard good things about iguanatex, which is free and would do the job. I should note that $\LaTeX$ actually has a presentation-type documentclass, called 'beamer.' You can read more about that here.

  • $\begingroup$ I don't seem to be able to export a powerpoint presentation to pdf. If I do so, I lose all the "animations" (which make sure steps show up one in a time). Therefore latex beamer would already be a better option, but my first choice would be something that I could show on the web (like mathjax). $\endgroup$
    – Kasper
    Mar 17, 2013 at 11:02
  • $\begingroup$ @Kasper Prezi is (free and) probably more appropriate than PowerPoint $\endgroup$ Mar 18, 2013 at 9:05
  • $\begingroup$ +1 for beamer $\endgroup$
    – Alexander Gruber
    Mar 20, 2013 at 22:42

If you really want to make presentations using Mathjax, and assuming you have basic knowledge of HTML/JS, I propose:

  • Have each slide you want to present a different <div> element, and after building all of them set them to style="display:none" so they are all hidden when a user browses your site;
  • Code some sort of navigation in your page, for example buttons "Next" and "Previous".

With this, you are able to use Mathjax inside each <div>, hidding all the other slides but the one you're showing, and then you can swift through different <div> elements with the navigation buttons (which through Javascript will hide and show the relevant <div> you want to present at the time).

Something like this example, notice the upper banners (they can be considered as pure image slides, yours would be text+images+latex).

  • $\begingroup$ Does MathJax renders elements not displayed in the document? Maybe we have to manually render each <div>s using MathJax.Hub object. $\endgroup$ Mar 17, 2013 at 11:08
  • 1
    $\begingroup$ Based on a quick browse I did before on the documentation, it seems MathJax renders everything once the page is loaded, so that's why I suggested that. In case it didn't do that the javascript function that handles slides changing would need to call the rendering function when showing a new <div>. $\endgroup$
    – Marcelo
    Mar 17, 2013 at 11:18
  • $\begingroup$ MathJax can't determine the sizes of element in a container that is display:none so you need to use some other techniques to achieve the same result. See the examples in the slides from my talk at the Joint Math Meetings in januarty $\endgroup$ Mar 17, 2013 at 13:47

I guess you just want the formulas, written in the mathjax syntax. The Mathjax syntax is based on the $\LaTeX$ syntax and $\LaTeX$ itself has a documentclass (not only one) for presentations with beamers (the so called beamer class).
I think it would be strange if you swap to a new slide and mathjax isn't rendered.

Even though the syntax is similar $\LaTeX$ is totally different to Mathjax and it really needs some time till you produce something. If you want to go on with mathematics you should invest the time to learn $\LaTeX$.

When you only have simple formulas and the presentation is in some days, I think you should not try setting it in $\LaTeX$, better use something were you actually see what you are doing.

I just want to add that I think a powerpoint presentation (on this principle based) is in my opinion not really good in math. One usually clicks to fast and so the audience has not enough time to unterstand what is going on.

If you say for what the presentation is intended we could help more specifically.


I would strongly recommend using the $\LaTeX$ beamer class, which allows you to create presentations that can be uncovered in steps (among others), while retaining the power of $\LaTeX$ for typesetting Maths.


Not the answer you're looking for? Browse other questions tagged .