Search code examples
jupyter-notebookreveal.jsnbconvert

How to increase the page width in ipython notebook (jupyter) slides


In an ipython notebook (jupyter) slideshow created with

ipython nbconvert presentation.ipynb --to slides --post serve

images are of poor quality because they seem to be scaled down to the page width. How can I increase the page width / display larger images in the presentation?

I found a partial answer here but this requires doing the "--post serve" part manually which I can find no documentation for.


Solution

  • After a long search I found the answer myself :

    1. Copy template file from

      lib/python2.7/site-packages/nbconvert/templates/html/slides_reveal.tpl

      to the directory of the notebook.

    2. Customize it, for example, in Reveal.initialize({ }) add

      width: '80%',
      height: '100%',
      transition: 'concave',
      
    3. Run

      jupyter nbconvert presentation.ipynb --to slides --template slides_reveal.tpl --post serve
      

      or just

      jupyter nbconvert presentation.ipynb --to slides --template slides_reveal.tpl
      

      then open presentation.slides.html directly in the browser. Alternatively:

      python -m SimpleHTTPServer
      

      and navigate the browser to

      http://127.0.0.1:8000/presentation.slides.html