c# - 如何在 PowerPoint 中以编程方式更改幻灯片布局?

标签 c# powerpoint

我需要使用 C# 以编程方式更改幻灯片的布局(使用 Add-In Express 2009 for Office 和 .NET)。如果新布局是预定义的,那么一切都很好,但如果我需要将自定义布局设置为新布局(无需重新创建幻灯片),则不行。不幸的是,我没有找到任何关于如何做的信息,PowerPoint 对象模型引用文档也没有回答我。只能创建使用自定义布局的新幻灯片。

我做了一个实验,并确保 Slide 对象在我更改预定义布局和自定义布局时保持不变。当我只需要切换布局时,我不想创建新幻灯片。

有可能吗?请帮助我找到一种方法。

最佳答案

唯一可行的方法是,如果您的自定义布局首先实际用于套牌中。然后您只需采用该布局并将其应用于您想要的幻灯片。您可以使用自定义布局以编程方式创建新幻灯片,使用它的布局应用于另一张幻灯片,然后删除您创建的新幻灯片。这是应用自定义布局的代码(请注意,我的 ap.Slides(2) 是自定义布局)

Sub ChangeLayout()
    Dim ap As Presentation
    Set ap = ActivePresentation
    Dim slide1 As Slide
    Set slide1 = ap.Slides(1)
    Dim customLayout As PpSlideLayout
    customLayout = ap.Slides(2).Layout
    slide1.Layout = ly
End Sub

关于c# - 如何在 PowerPoint 中以编程方式更改幻灯片布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2919922/

相关文章:

c# - EnvDTE 从 CodeElement 中检索数据类型

vba - PowerPoint 2007/2010 VBA ppam 加载项在打开时不显示在 VBA 编辑器中

javascript - 使用 JavaScript 创建 OpenXML 文档

java - 使用 Apache POI XSLF 在单张幻灯片中的指定位置附加 3 个图像

hyperlink - 如何超链接到.ppt文件的特定幻灯片?

python - 如何使用python powerpoint保持文本的原始文本格式?

C# 范围和 GC : Is outer reference-type object guaranteed to remain valid after assigned to inner object in nested "using" scope?

c# - 通过 MongoDB C# 驱动程序使用 SSL 连接到 DocumentDB

c# - 'System.Collections.IEnumerator' 不包含 'GetEnumerator' 的公共(public)定义

c# - 将 int 转换为 boolean 值的更好方法