2017-02-22 32 views
1

如何使用C#interop庫在PowerPoint中設置演示文稿或幻燈片(PPT)pagsize?如何使用C#interop庫在PowerPoint中設置演示文稿pagsize?

我想設置的演示pagsize是 「ppSlideSizeOnScreen16x9

 // Create new Slide 
     PowerPoint.Application pptApp = new PowerPoint.Application(); 
     MyPres = pptApp.Presentations.Add(MsoTriState.msoFalse); 
     MyPres.Final = false; 
     MyPres.PageSetup.SlideSize = PowerPoint.PpSlideSizeType.ppSlideSizeOnScreen16x9; 

     Code more ... 

這個結果不是我所期待; 現在,如何設置演示文稿或幻燈片(PPT)pagsize?

回答

1

不確定這是否正是您要查找的內容,但這是我設置幻燈片大小的方式。

this.Application.ActivePresentation.PageSetup.SlideHeight = <your slide height>; 
this.Application.ActivePresentation.PageSetup.SlideWidth = <your slide width>; 

允許您設置點的寬度和高度,而不是像素。您可以使用下面的像素轉換爲點

private int PixelsToPoints(int pixels) 
{ 
    return pixels * 72/96; 
} 
+0

不要假設96 dpi的屏幕。 http://stackoverflow.com/a/21450169/105929 –

+0

@RemusRusanu - 好點,好鏈接 – Sandwich

+0

嘗試運行你的代碼。錯誤信息是「無效的請求,沒有活動的表示。」爲什麼?? – doo0301

0

現在,這是正確的代碼:

 PowerPoint.Application pptApp = new PowerPoint.Application(); 
     MyPres = pptApp.Presentations.Add(MsoTriState.msoTrue); 
     MyPres.PageSetup.SlideWidth = <slide width>; 
     MyPres.PageSetup.SlideHeight = <slide height >; 

這行代碼有錯誤?我不知道!

 MyPres.PageSetup.SlideSize = PowerPoint.PpSlideSizeType.ppSlideSizeOnScreen16x9; 
相關問題