2012-01-30 81 views
2

在powerpoint 2010中引入了一種稱爲「閱讀視圖」的新視圖類型。我試圖將其應用於演示文稿,但Office Interop的PpViewType枚舉不包含將將演示視圖修改爲「閱讀視圖」的任何成員。任何人都可以幫助我是否已經定義了其他地方,或者我可以如何改變爲閱讀視圖編程?如何以編程方式將閱讀視圖更改爲Powerpoint視圖類型?

PowerPoint.Application oPPT = new PowerPoint.Application(); 

//Add New Presentation 
PowerPoint.Presentations oPresSet = oPPT.Presentations; 
PowerPoint.Presentation oPres = oPresSet.Add(Office.MsoTriState.msoTrue); 

//Add Slides to the Presentation 
PowerPoint.Slides oSlides = oPres.Slides; 
PowerPoint.Slide oSlide = oSlides.Add(1, PowerPoint.PpSlideLayout.ppLayoutTitleOnly); 
oSlide.Shapes[1].TextFrame.TextRange.Text ="sample text"; 

//Changing View Type 
oPres.Application.ActiveWindow.ViewType = PowerPoint.PpViewType.ppViewNotesPage; 
+0

C#或VBA?你可以顯示代碼到目前爲止設置Viewtype的位置嗎?你確定如果C#,你引用COM Office庫/ PIA的正確版本,2010我的意思是... – 2012-01-30 08:46:09

+0

什麼都沒有問題。我只參考了Office 14的版本。請參閱這裏[鏈接](http://msdn.microsoft.com/en-us/library/microsoft.office.interop.powerpoint.ppviewtype.aspx)代碼很簡單。編輯代碼的主要帖子 – satya 2012-01-30 09:06:30

回答

0

你似乎不能夠從對象模型直接切換到閱讀視圖,但可以近似它在Office 2010+只讀演示文件:

  • 開始幻燈片顯示ppShowTypeWindow2的ShowType。
  • 關閉原文檔窗口
  • 將演示文稿標記爲已保存。

VBA示例

Dim pres As Presentation 
Dim settings As SlideShowSettings 

Set pres = ActivePresentation 
Set settings = pres.SlideShowSettings 

settings.ShowType = ppShowTypeWindow2 
settings.Run 

pres.Windows(1).Close 
pres.Saved = msoTrue 
相關問題