欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#使用PPT組件的CreateVideo方法實現(xiàn)視頻生成

 更新時間:2023年10月24日 09:57:55   作者:初九之潛龍勿用  
這篇文章主要為大家詳細(xì)介紹了C#如何使用PPT組件的CreateVideo方法實現(xiàn)視頻生成,文中的示例代碼講解詳細(xì),有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下

需求

我們在使用PowerPoint文檔時,經(jīng)常會使用其導(dǎo)出功能以創(chuàng)建視頻,如下圖:

手工操作下,在制作好PPT文件后,點擊文件 -> 導(dǎo)出 -> 創(chuàng)建視頻 -> 設(shè)置導(dǎo)出選項 -> 點擊創(chuàng)建視頻即可,下面我們介紹一下如何使用C#來實現(xiàn)這一需求。

實現(xiàn)

首先我們需要引用 Microsoft.Office.Interop.PowerPoint 程序集,具體的系統(tǒng)環(huán)境及基礎(chǔ)配置,請參照我的文章《C#操作PPT動畫窗格并插入音頻文件的一些思路》。

Microsoft.Office.Interop.PowerPoint.Presentation對象提供了CreateVideo方法,該方法實現(xiàn)創(chuàng)建視頻功能。

CreateVideo方法

語法為:CreateVideo( FileName, UseTimingsAndNarrations, DefaultSlideDuration, VertResolution, FramesPerSecond, Quality )

參數(shù)介紹:

名稱必需/可選對應(yīng)C#類型說明默認(rèn)值
FileName必需string要創(chuàng)建的視頻文件的名稱
UseTimingsAndNarrations可選bool指示是否使用計時和旁白true
DefaultSlideDuration可選int觀看幻燈片的持續(xù)時間(單位:秒)5
VertResolution可選int幻燈片的分辨率720
FramesPerSecond可選int每秒的幀數(shù)30
Quality可選int幻燈片的質(zhì)量水平,最高10085

關(guān)鍵代碼

POWERPOINT.Application objApp = null; //初始PPT應(yīng)用對象
POWERPOINT.Presentation objPresSet = null; //初始文稿對象
 
objApp = new POWERPOINT.Application(); //創(chuàng)建實例化PPT應(yīng)用
objApp.DisplayAlerts = POWERPOINT.PpAlertLevel.ppAlertsNone; //關(guān)閉一切提示
 
string pptfilename="c:\\test.pptx"; //要打開的PPT文件名
 
//打開文件,創(chuàng)建實例化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;  //觀看幻燈片的持續(xù)時間(單位:秒)
int VertResolution = 720;   //幻燈片的分辨率
int FramesPerSecond = 30;   //每秒的幀數(shù)
int Quality = 100;  //幻燈片的質(zhì)量水平,最高100
 
//創(chuàng)建視頻開始
objPresSet.CreateVideo(MP4_FileName, UseTimingsAndNarrations, DefaultSlideDuration, VertResolution, FramesPerSecond, Quality);
 
//由于該方法是異步的,需要實時監(jiān)控生成進(jìn)度
while (objPresSet.CreateVideoStatus == POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusInProgress)
{
    System.Threading.Thread.Sleep(1000); //間隔1秒監(jiān)控1次
}
 
//生成完畢,執(zhí)行其它操作...
 
......

CreateVideoStatus

返回在當(dāng)前文稿對象中創(chuàng)建一個視頻的狀態(tài),只讀屬性。枚舉包括如下:

POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusDone           //完成
POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusFailed          //失敗
POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusNone           //空閑
POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusQueued       //排隊
POWERPOINT.PpMediaTaskStatus.ppMediaTaskStatusInProgress  //執(zhí)行中

其它

如果在同一臺計算機,即使打開多個PPT應(yīng)用,每個應(yīng)用執(zhí)行不同的導(dǎo)出操作,也只有一個任務(wù)在執(zhí)行,其它的任務(wù)則處于排隊狀態(tài),而且如果顯式的打開應(yīng)用,會在所有打開的PPT應(yīng)用的底部狀態(tài)欄看到同一任務(wù)信息,即正在創(chuàng)建的視頻信息。

到此這篇關(guān)于C#使用PPT組件的CreateVideo方法實現(xiàn)視頻生成的文章就介紹到這了,更多相關(guān)C# CreateVideo生成視頻內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • c#單例模式(Singleton)的6種實現(xiàn)

    c#單例模式(Singleton)的6種實現(xiàn)

    這篇文章主要介紹了c#單例模式(Singleton)的6種實現(xiàn) ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • C# dataset存放多張表的實例

    C# dataset存放多張表的實例

    這篇文章主要介紹了C# dataset存放多張表的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • C#中richtextbox使用方法詳解

    C#中richtextbox使用方法詳解

    這篇文章主要介紹了C#中richtextbox使用方法,分析較為詳盡,需要的朋友可以參考下
    2014-07-07
  • C# 的析構(gòu)以及垃圾回收實例分析

    C# 的析構(gòu)以及垃圾回收實例分析

    這篇文章主要介紹了C# 的析構(gòu)以及垃圾回收實例分析的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • c#深拷貝文件夾示例

    c#深拷貝文件夾示例

    這篇文章主要介紹了c#深拷貝文件夾示例,需要的朋友可以參考下
    2014-04-04
  • C# 文件下載之?dāng)帱c續(xù)傳實現(xiàn)代碼

    C# 文件下載之?dāng)帱c續(xù)傳實現(xiàn)代碼

    本篇文章主要介紹了C# 文件下載之?dāng)帱c續(xù)傳實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • C#實現(xiàn)單例模式的幾種方法總結(jié)

    C#實現(xiàn)單例模式的幾種方法總結(jié)

    這篇文章主要介紹了C#實現(xiàn)單例模式的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • C#實現(xiàn)多線程寫入同一個文件的方法

    C#實現(xiàn)多線程寫入同一個文件的方法

    這篇文章主要介紹了C#實現(xiàn)多線程寫入同一個文件的方法,涉及C#多線程操作文件讀寫的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • C#的正則表達(dá)式Regex類使用簡明教程

    C#的正則表達(dá)式Regex類使用簡明教程

    這篇文章主要介紹了C#的正則表達(dá)式Regex類使用簡明教程,分別講解了如何匹配、如何獲取匹配次數(shù)、如何獲取匹配內(nèi)容及捕獲的方法,需要的朋友可以參考下
    2014-08-08
  • 一文詳解Unity3D?AudioSource組件使用示例

    一文詳解Unity3D?AudioSource組件使用示例

    這篇文章主要為大家介紹了一文詳解Unity3D?AudioSource組件使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03

最新評論