11

我有一个基于 Web 的应用程序的客户端,他大量使用我们系统中的数据进行 PowerPoint 演示。

我们目前允许以更传统的文件类型导出数据...PDF、CSV、HTML 和其他一些文件类型。Powerpoint 似乎并不是真正自动化的。

有没有办法在 ASP.NET 服务器端自动创建和按需下载系统报告的 powerpoint 文件格式?

4

6 回答 6

4

本文中,Steve 建议使用 Aspose 的 Slide 应用程序。

他还逐步解释了如何生成 PowerPoint 文件。

以下是一些代码摘录(在 VB 中):

打开现有的 PowerPoint 文件:

 Dim fs As  System.IO.FileStream = _

   New System.IO.FileStream("c:\mypath\myfile.ppt", _

   System.IO.FileMode.Open, System.IO.FileAccess.Read)

Dim MyPres As Presentation = New Presentation(fs)

fs.Close() 

循环幻灯片并输出其模板格式:

Dim slides  As Slides = MyPres.Slides

For i As Integer = 0 To slides.Count - 1

   Response.Write(MyPres.Slides(i).Layout.ToString + "<br>")

Next

在他的文章中,他更详细地描述了如何做到这一点。

于 2008-12-19T16:29:34.613 回答
4

好吧,您有两种方法可以真正做到这一点,而无需第三方工具。第一个是 PowerPoint 自动化,但这需要您的服务器安装 PowerPoint。二是利用新的pptx文件文件格式,使用XML生成PowerPoint文档。

我发现开始使用 XML 方面的最佳方法是简单地创建一个你想要的 powerpoint,然后保存它并查看 XML。您还可以查看 microsoft 文档。总体而言,使用 XML 格式非常容易。

最后,可能会有一些第三方项目,但请注意它们不需要 COM 自动化。

于 2008-12-19T16:29:34.613 回答
4

关于上一张海报,你的说法是不正确的。

对于此过程的服务器端 ASP.NET 自动化,您实际上只有一个选项。使用 Ben 在原始答案中提到的开放 xml 链接...

使用 Open XML 格式 API 处理 Excel 2007 和 PowerPoint 2007 文件(第 1 部分,共 2 部分) 使用 Open XML 格式 API 处理 Excel 2007 和 PowerPoint 2007 文件(第 2 部分,共 2 部分)

原因是办公室的服务器端自动化完全不受支持,并且是糟糕的编码实践,运行为在非交互式环境中交互式使用而设计的 com 自动化服务器可能会导致灾难。

所以总而言之,使用 open xml api 并生成您的 pptx。

于 2009-07-29T22:29:00.833 回答
0

还有其他类似于 Aspose Slides 的第三方选项,例如 OfficeWriter 的PowerPoint Writer

我不确定 Aspose Slides 是如何工作的,但是使用 PowerPoint Writer,您有一个现有的、格式化的 PowerPoint 演示文稿,其中包含数据标记,您可以使用 PowerPoint Writer 处理它以用数据替换数据标记。下面是一些例子

于 2014-01-20T14:37:42.223 回答
-1

还有另一种方法,将您的 power point 演示文稿转换为图像或 xps(银光演示文稿),然后使用某种 json(jquery)来显示和下载它们。

我在我的网络应用程序中实现图像和 xps 银光演示

于 2011-03-26T05:31:42.003 回答