【问题标题】:Generating Powerpoint or Keynote from XML (or via a Ruby gem?)从 XML 生成 Powerpoint 或 Keynote(或通过 Ruby gem?)
【发布时间】:2011-09-27 12:56:41
【问题描述】:

我正在寻找一种从XML 生成 Keynote 文件或随后可以导入到 Keynote 的 Powerpoint 文件的好方法。基本上,我正在寻找一种可以导出到幻灯片中的简单的人类可写标记格式(便于编写脚本)。

我在当地的一家非营利组织做志愿者,任何远程技术都落在我身上。我会定期收到活动信息,并在 Word 中制作一个漂亮的打印程序,尽管大部分相同的材料也会出现在 Keynote 的幻灯片中。 (使用 Keynote 而不是 PowerPoint,因此可以使用 Keynote Remote。)

无论如何,我处理的大量文本是通过电子邮件发送的,它们必须同时出现在 Keynote 演示文稿和 Word 文档中,并且需要各种奇怪的手动格式化才能不中断页面或在奇怪的时间滑动,也需要大量的手动重新设计,因为我不会让我做的事情看起来像 1990 年代的马虎。

我希望编写一个 Ruby 脚本,我可以将源文本提供给它,它会为我完成所有处理,至少对于 Powerpoint 或 Keynote。我通常非常幸运地找到了适用于我想要使用的任何格式或服务的 gem,但我没有找到任何适用于 Powerpoint 或 Keynote 的东西。

我的下一个想法是让 Ruby 代码生成适当的 XML,因为据称 Office 和 I Work 都打开了 Office XML 格式,但我找不到任何可人工编写的实际友好文档 XML 代码.

希望能够做到以下几点是一厢情愿吗?

<SLIDE FORMAT="Title & Bullets">
  <SLIDE_TITLE>
    Lorem Ipsum
  </SLIDE_TITLE>
<PARAGRAPH>
    [etc.]

就转换器脚本而言,我能找到的所有内容都与图表和表格相关,而这里的用途为零),通常围绕从 Powerpoint 或 Keynote 打开或转换而不是创建,而且通常似乎用于使用 OLE 或 VBScript 的 Windows。这需要在他们拥有的 Mac 上运行,因此没有 Visual Studio 的东西、Windows 相关的脚本等将起作用。我不必在 Ruby 中执行此操作,但这是我在 Mac 端最舒服的方式。

那么有没有关于 Powerpoint 或 Keynote 的稍微友好的 XML 格式的文档,或者更好的是,Ruby gem 的任何一个?

【问题讨论】:

    标签: ruby xml powerpoint iwork keynote


    【解决方案1】:

    如果您只需要标题 + 项目符号幻灯片,您只需创建一个 ascii 文本文件。每行文本都将成为新幻灯片的标题。但是,如果一行文本中的第一个字符是制表符,则该行将成为与前一个标题相同的幻灯片上的第一级项目符号点。如果有两个制表符,它会将文本缩进到第二级项目符号点,依此类推。

    This becomes the title on slide one
    This becomes the title on slide two
    <tab>This is a bullet point, first level
    <tab><tab>And this is a bullet point, second level
    <tab>Back to first level bullet point
    And another new slide
    

    一旦你有了文本文件,你可以在 PPT 中打开文件并将类型文件强制到所有文件 . 并选择你的 .TXT 文件。或者,您可以使用“从文件插入幻灯片”将 .TXT 文件引入现有演示文稿。

    像这样一次性创建的幻灯片数量是有限制的;也许是 100 个?

    另请注意,VBA 在 Mac Office 2008 中消失了,但在 Mac Office 2011 中又回来了,因此,如果您能找到执行所需操作的 VB/VBA 代码示例,您可以在 Mac 上使用它们,只要它没有不必在 Office 2008 中发生。

    【讨论】:

    • 谢谢!对于 Ruby 脚本的目的,这将工作得很好。我正要说,当我做一个测试文件时它不能正常工作。所有内容都加载为幻灯片标题区域中的行。但是后来我重新保存了文件,以回车和换行结束,而不仅仅是换行,这就成功了。再次感谢。现在这个障碍已经解决了,我想我可以编写剩下的代码了!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-09
    • 2012-02-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多