使用JavaScript创建OpenXML文档。

8
我有一个应用程序需要使用JavaScript创建简单的OpenXML文档(特别是PowerPoint演示文稿)。是否可能实现这一点?我曾经使用Microsoft OpenXML SDK在C#中进行类似操作,并想知道是否有任何具有类似功能的JavaScript库。本质上,问题在于如何创建组成未压缩PowerPoint文档的各个OpenXML文档,然后将它们压缩在一起以创建PowerPoint(.pptx)文件,用户可以将其保存到他们的磁盘上。欢迎任何想法!

2
为什么你需要在客户端完成这个任务?这几乎是不可能的,而且非常不舒服。相比之下,在服务器端完成这个任务几乎是轻而易举的,无论使用哪种编程语言。 - Viruzzo
我同意Viruzzo的观点,你应该考虑在服务器端实现它。如果可以接受的话,你可以将其发布为Web服务,并通过使用AJAX调用从JavaScript调用其方法。 - Lukasz M
是的,我同意在客户端完成这个任务会更容易(并且这也是我在以前的项目中所做的)。但在这种情况下,客户需要一个能够独立运行并具有跨浏览器兼容性的解决方案。 - Appetere
为了实现很好的跨浏览器兼容性,请在服务器端实施。在这种情况下,你的客户所指的"stand-alone"是什么意思? - Michael Paulukonis
1
也许你可以尝试手动创建一个空的OpenXML文件(即空的pptx)作为基础模板,然后将其作为带有JavaScript代码的XML进行处理。这可能比使用JavaScript创建文件要容易得多,不过仍然需要做很多工作。 - Lukasz M
3个回答

4

0

使用OPEN XML SDK。您可以在节点上运行它,在32秒内创建2000个文档。或者您可以在浏览器上运行它。


0

显然,像压缩/解压缩文档或保存文档这样的操作无法在客户端使用纯JavaScript完成。

然而,如果您想要执行此类操作,我相信有一些Linux软件包可以接受字符串作为输入,并输出一个可用的办公文档。

如果您不熟悉Linux软件包,假设您想将其保存为Word 2007文档:

<?xml version="1.0" encoding="utf-8"?> 
<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"> 
    <w:body> 
        <w:p> 
            <w:pPr> 
            <w:pStyle w:val="MyHeading1" /> 
            </w:pPr> 
            <w:r> 
            <w:t>This is Heading</w:t> 
            </w:r> 
        </w:p> 
    </w:body> 
</w:document>

你可以在客户端构建这个字符串,然后通过AJAX发送到服务器,让服务器处理它。我自己多次使用过这些API,具体来说要让PHP来处理它。把结果保存在某个地方,或者强制客户端的浏览器下载它(流式传输结果)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接