Visual C++ 7.1Visual Studio .NET 2003Windows 2003.NET 1.1Windows 2000Windows XP中级开发Visual StudioWindowsC++.NETC#
将 PowerPoint 幻灯片导出为高质量位图






4.33/5 (6投票s)
使用屏幕截图将 PowerPoint 幻灯片导出为位图。
引言
我目前正在进行一个项目,该项目涉及从 PowerPoint (PP) 演示文稿中提取位图。从 PP 中将演示文稿保存为 JPEG 根本无法满足我的需求。高度压缩的文件、没有抗锯齿文本、无法控制图像大小等等,这让我非常沮丧。如果您也遇到过同样的问题,请继续阅读。
背景
Mark Belles 在 CodeProject 上发表的一篇文章,关于屏幕截图,启发我创建了以下应用程序。
使用代码
主要引擎是一个类,名为 PowerPointDump
,它只有一个方法,名为 Dump
。Dump
循环遍历演示文稿窗口中的所有幻灯片,并将屏幕转储为 PNG 图像,但首先它会将演示文稿窗口的大小设置为与我们选择的位图大小相匹配。
为了能够控制 PowerPoint,我引用了“Microsoft Office 9.0 对象库”COM 对象。所以你的电脑上需要安装 PP(这应该是理所当然的吧?)。当然,我也可以使用 Office XP 的主互操作程序集 (PIA),但我仍然使用 Office 2000。
为了好玩,我使用了单例模式来设计这个引擎。它的使用方法很简单。
int result =
PowerPointDump.Instance.Dump(inputPath,
outputPath, 800, 600,
Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height );
关注点
在屏幕截图代码的帮助下,我实现了从 PP 幻灯片中获取高质量位图的想法。因此,这篇文章是对所有为 CodeProject 做出贡献的人们的回馈。
历史
- 发布于 2005 年 6 月 8日。