工商局网站怎么做身份确认,中国建设银行网站密码忘了怎么办,哈尔滨的网络优化能做么,常用网站搜索引擎目录
需求
实现
CreateVideo方法
关键代码
CreateVideoStatus
其它 需求
我们在使用PowerPoint文档时#xff0c;经常会使用其导出功能以创建视频#xff0c;如下图#xff1a; 手工操作下#xff0c;在制作好PPT文件后#xff0c;点击文件 - 导出 - 创建视…目录
需求
实现
CreateVideo方法
关键代码
CreateVideoStatus
其它 需求
我们在使用PowerPoint文档时经常会使用其导出功能以创建视频如下图 手工操作下在制作好PPT文件后点击文件 - 导出 - 创建视频 - 设置导出选项 - 点击创建视频即可下面我们介绍一下如何使用C#来实现这一需求。
实现
首先我们需要引用 Microsoft.Office.Interop.PowerPoint 程序集具体的系统环境及基础配置请参照我的文章《C#操作PPT动画窗格并插入音频文件的一些思路》。
Microsoft.Office.Interop.PowerPoint.Presentation对象提供了CreateVideo方法该方法实现创建视频功能。
CreateVideo方法
语法为CreateVideo( FileName, UseTimingsAndNarrations, DefaultSlideDuration, VertResolution, FramesPerSecond, Quality )
参数介绍
名称必需/可选对应C#类型说明默认值FileName必需string要创建的视频文件的名称UseTimingsAndNarrations可选bool指示是否使用计时和旁白trueDefaultSlideDuration可选int观看幻灯片的持续时间单位秒5VertResolution可选int幻灯片的分辨率720FramesPerSecond可选int每秒的帧数30Quality可选int幻灯片的质量水平最高10085
关键代码 POWERPOINT.Application objApp null; //初始PPT应用对象
POWERPOINT.Presentation objPresSet null; //初始文稿对象objApp new POWERPOINT.Application(); //创建实例化PPT应用
objApp.DisplayAlerts POWERPOINT.PpAlertLevel.ppAlertsNone; //关闭一切提示string pptfilenamec:\\test.pptx; //要打开的PPT文件名//打开文件创建实例化PPT文稿对象
objPresSet objApp.Presentations.Open(pptfilename, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);string MP4_FileName c:\\test.mp4; //输出的MP4文件名
bool UseTimingsAndNarrations false; //指示是否使用计时和旁白
int DefaultSlideDuration 5; //观看幻灯片的持续时间单位秒
int VertResolution 720; //幻灯片的分辨率
int FramesPerSecond 30; //每秒的帧数
int Quality 100; //幻灯片的质量水平最高100//创建视频开始
objPresSet.CreateVideo(MP4_FileName, UseTimingsAndNarrations, DefaultSlideDuration, VertResolution, FramesPerSecond, Quality);//由于该方法是异步的需要实时监控生成进度
while (objPresSet.CreateVideoStatus POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusInProgress)
{System.Threading.Thread.Sleep(1000); //间隔1秒监控1次
}//生成完毕执行其它操作.........
CreateVideoStatus
返回在当前文稿对象中创建一个视频的状态只读属性。枚举包括如下
POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusDone //完成 POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusFailed //失败 POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusNone //空闲 POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusQueued //排队 POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusInProgress //执行中
其它
如果在同一台计算机即使打开多个PPT应用每个应用执行不同的导出操作也只有一个任务在执行其它的任务则处于排队状态而且如果显式的打开应用会在所有打开的PPT应用的底部状态栏看到同一任务信息即正在创建的视频信息。
以上是C#使用PPT组件的CreateVideo方法生成视频的介绍感谢您的阅读欢迎大家批评指正。