使用C#显示powerpoint
本文关键字:powerpoint 显示 使用 | 更新日期: 2023-09-27 17:48:48
有什么好方法可以使用用C#编写的windows应用程序来显示/控制powerpoint幻灯片吗?最终,我想在表格中显示缩略图,点击这些缩略图可以在第二台显示器上显示幻灯片(类似于使用Powerpoint本身在第二个显示器上显示幻灯)。
如果没有安装Powerpoint,我希望能够使用Powerpoint Viewer。
似乎有一些ActiveX控件允许在窗体中集成Powerpoint,但其中大多数似乎都需要花钱,有人有使用这些控件的经验吗?
编辑:我知道有一个对象模型可以通过添加对Microsoft.Office.InterOp.Powerpoint的引用来访问,但我希望能够在不以Microsoft Office为先决条件的情况下分发生成的程序,这就是我提到Powerpoint Viewer的原因,因为它可以自由分发。
这个kb列出了使用powerpoint演示查看器对象模型的基础知识。我建议您在分发应用程序时包含查看器。
http://support.microsoft.com/kb/265385
一旦您获得了对查看器(顶级)对象的引用,它基本上与使用powerpoint.presentation对象模型相同,但功能较少(即编辑等)
如果使用Powerpoint 2007,则可以通过使用System.XML和相关命名空间来添加编辑功能,从而将表示文件作为打开的XML文件使用。
关于关于UNO/openoffice.org的评论,我认为这些评论没有切中要害,因为你不能使用UNO来处理powerpoint,它是用于openoffice的,这不是提问者最初的要求。
有像aspose这样的第三方工具集,但当时你的目标是使用powerpoint查看器组件(免费),所以我猜你想避免为开发工具付费?无论哪种方式,查看器组件OM都非常适合显示和预览现有幻灯片。(您需要一份Powerpoint副本,以便从头开始编写演示文稿,再加上Visual Studio来创建VSTO项目)。
我们的一个软件可以做到这一点。最初我们使用MS Office,但最近我们改用OpenOffice.org Uno,因为它比MS Office提供了更好的控制,而且更容易使用。它具有.NET CLI绑定。
为了回答您的问题,是的,这是可以做到的,但我们的工程师建议您使用OpenOffice.org。
就像使用Microsoft Excel和Word一样,Powerpoint有一个对象模型,您可以通过在项目中包含对的引用来在代码中访问它
Microsoft.Office.InterOp.Powerpoint.
我使用过Excel和Word模型,但没有使用Powerpoint模型。一旦包含了引用,您可以打开对象浏览器来了解可用的功能。如果您不想使用第三方工具访问对象模型,这可能是一个可行的解决方案。
我使用了Aspose的Word工具包——他们也有一个Powerpoint工具包,我认为值得一看。
http://www.aspose.com/categories/file-format-components/aspose.slides-for-.net-and-java/default.aspx