12

我想为我的演示文稿制作幻灯片。我的演示文稿将包含以下内容:幻灯片标题、项目符号、代码片段(采用等宽字体)、一些代码行以粗体突出显示、Python 代码片段(语法突出显示)。

我需要一个可以在 HTML(或 HTML5)中生成此类幻灯片的应用程序或工具,因此当我在 Web 浏览器中打开生成的 HTML 并将 Web 浏览器设置为全屏模式时,它将启动幻灯片放映。我更喜欢将我的演示文稿编写为.txt带有一些标记的文件,然后该工具应该生成 HTML。

我知道 Google Docs 的演示功能,但它不支持 Python 语法突出显示。

我也知道LaTeX 和 Beamer,但这会生成 PDF 而不是 HTML(不是一个大问题),并且没有内置 Python 语法突出显示。

我更喜欢使用普通的 Google Chrome 或 Mozilla Firefox 来投影我的演示文稿。我不想在投影机上安装任何演示软件(例如bruce )。

有替代方案吗?

4

5 回答 5

12

尝试以下方法之一:

  1. 使用 S5 重构文本

    http://meyerweb.com/eric/tools/s5/

    http://docutils.sourceforge.net/docs/user/slide-shows.html

    如果您安装docutils(首选快照),您将在 tools 文件夹中获得 rst2s5.py。

  2. 布鲁斯,演示工具

    http://code.google.com/p/bruce-tpt/

  3. Pandoc:通用文档转换器

    http://johnmacfarlane.net/pandoc/

  4. AsciiDoc有一个选项可以生成自包含的Slidy HTML

于 2010-11-12T11:13:56.440 回答
3

最近出现了slippy:将您的演示文稿编辑为HTML,突出显示Python(和许多其他语言)。

于 2010-11-12T12:40:29.597 回答
2

你绝对应该看看landslide,这是一个 python 应用程序,它允许从 markdown 格式的文本创建非常漂亮的 HTML5 幻灯片,它支持语法突出显示。要预览它的功能,只需查看从项目的README生成的示例幻灯片

于 2010-11-12T11:52:25.670 回答
2

html5slides 是不错的选择。

http://code.google.com/p/html5slides/

于 2012-01-12T00:22:54.897 回答
1

这只是您所要求的一部分,但是如果您想要对 Python 进行语法高亮并转换为 HTML,那么您可以在 Emacs 中使用python-mode来执行语法高亮并htmlize转换为 HTML。

例如,您可以从

def decode_safely(s, charset='ascii'):
    """Return s decoded according to charset, but do so safely."""
    try:
        return s.decode(charset or 'ascii', 'replace')
    except LookupError: # bogus charset
        return s.decode('ascii', 'replace')

通过后htmlize你得到:

<pre><span class="keyword">def</span> <span class="function-name">decode_safely</span>(s, charset=<span class="string">'ascii'</span>):
    <span class="string">"""Return s decoded according to charset, but do so safely."""</span>
    <span class="keyword">try</span>:
        <span class="keyword">return</span> s.decode(charset <span class="keyword">or</span> <span class="string">'ascii'</span>, <span class="string">'replace'</span>)
    <span class="keyword">except</span> <span class="type">LookupError</span>: <span class="comment"># see job002442
</span>        <span class="keyword">return</span> s.decode(<span class="string">'ascii'</span>, <span class="string">'replace'</span>)
</pre>

您可以看到每条语法都标有<span>属于某个类的 ,指示它属于哪个语法类:然后您可以使用 CSS 指定您想要的颜色。(htmlize可以配置为指定显式颜色<span style="color:#b22222">,但 class/CSS 方法更灵活。)

作为幻灯片生成过程的一部分,这可以很容易地自动化,但我认为这对于一个答案来说已经足够了。

于 2010-11-12T11:07:58.293 回答