reveal 幻灯片
by Dat Tran
由Dat Tran
如何使用Jupyter和Reveal.js抛弃PowerPoint并制作更好的幻灯片 (How you can ditch PowerPoint and build better slides with Jupyter and Reveal.js)
In this article, I will introduce jupyter2slides — a little side project of mine that lets you easily create beautiful and interactive presentation slides using Jupyter Notebook and reveal.js.
在本文中,我将介绍jupyter2slides-我的一个小项目,可让您使用Jupyter Notebook和Reveal.js轻松创建漂亮的交互式演示幻灯片。
Here’s what it looks like:
看起来是这样的:
And this is the corresponding PDF, generated with DeckTape:
这是用DeckTape生成的相应PDF:
我建立这个的动机 (My motivation for building this)
Microsoft PowerPoint is cool. It’s like a Swiss Army knife for consultants, and you can make beautiful slides with it.
Microsoft PowerPoint很酷。 这就像顾问的瑞士军刀,您可以用它制作精美的幻灯片。
When it comes to code, though, PowerPoint sucks. The solution is to use reveal.js. You can use markdown to highlight code, and it’s responsive. But like LaTeX, it can be tedious.
但是,在代码方面,PowerPoint很烂。 解决方案是使用reveal.js。 您可以使用markdown突出显示代码,它具有响应能力。 但是像LaTeX一样,这可能很乏味。
Another way to use reveal.js is through Jupyter which offers many advantages:
另一种使用reveal.js的方法是通过Jupyter,它具有许多优点:
- In-browser editing for code with automatic syntax highlighting, indentation, and tab completion 浏览器中的代码编辑,带有自动语法突出显示,缩进和制表符补全
- Ability to run code with the results of computations attached to the code which generated them (literate programming) 能够运行代码,并将计算结果附加到生成代码的代码上(识字编程)
Supports Markdown and many media formats such as HTML, LaTex, audio, and images
支持Markdown和许多媒体格式,例如HTML,LaTex,音频和图像
- Supports interactive widgets to manipulate and visualize data 支持交互式小部件以操纵和可视化数据
Uses tools from the PyData stack like Matplotlib, Numpy, and Bokeh as well as others like Plotly and Folium
使用PyData堆栈中的工具,例如Matplotlib,Numpy和Bokeh,以及其他工具,例如Plotly和Folium
To use reveal.js with Jupyter, you create a notebook and use nbconvert to get reveal.js slides as well. But the standard design is boring:
要在Jupyter中使用reveal.js,您需要创建一个笔记本并使用nbconvert来获取reveal.js幻灯片。 但是标准设计很无聊:
我的解决方案 (My solution)
I’ve worked on a project that lets you generate beautiful presentation slides. The entire code is on my GitHub repo. Under the hood, it still uses nbconvert
with reveal.js, but I extended it by:
我已经完成了一个项目,可以使您生成精美的演示幻灯片。 整个代码在我的GitHub存储库中 。 在nbconvert
,它仍然将nbconvert
与reveal.js nbconvert
使用,但是我通过以下方式对其进行了扩展:
- Adding a customized theme which has a cleaner design 添加具有更简洁设计的自定义主题
Enabling the title footer plugin by default
默认启用标题页脚插件
- Enabling slide numbers by default 默认启用幻灯片编号
- Adding a Jupyter notebook template with examples like cover and divider slides, markdown syntax, and more 添加带有示例的Jupyter笔记本模板,例如封面和分隔幻灯片,降价语法等
Making it easier to push the presentation to Cloud Foundry by using Flask and the Python buildpack
使用Flask和Python buildpack更容易将演示文稿推送到Cloud Foundry
Including the option to export slides to PDF using DeckTape
包括使用DeckTape将幻灯片导出为PDF的选项
如何开始 (How to get started)
To create your own presentation, clone the repo on GitHub and go through its readme.
要创建您自己的演示文稿,请在GitHub上克隆存储库,并阅读其自述文件。
I hope this project will be of use for you in the future. I look forward to seeing others use this template at conferences like PyData. I welcome any feedback to improve the slide designs and others’ contributes to the code base.
希望这个项目将来对您有用。 我期待看到其他人在像PyData这样的会议上使用此模板。 我欢迎您提供任何改进幻灯片设计的反馈意见,也欢迎其他人对代码库做出贡献。
If you found this article useful, give me a high five ?? so others can find it too, and share it with your friends. Follow me here on Medium (Dat Tran) or on Twitter (@datitran) to stay up-to-date with my work. Thanks for reading!
如果您觉得这篇文章有用,请给我最高五分? 这样其他人也可以找到它,并与您的朋友分享。 在Medium(Da t Tran)或Twitter(@d atitran)上关注我,以了解我的最新作品。 谢谢阅读!
reveal 幻灯片