C# 4.0 OpenXML-PresentationML-newMasterPart.SlideMaster.Preserve=false,不工作

C# 4.0 OpenXML-PresentationML-newMasterPart.SlideMaster.Preserve=false,不工作,c#-4.0,openxml,openxml-sdk,powerpoint-2007,presentationml,C# 4.0,Openxml,Openxml Sdk,Powerpoint 2007,Presentationml,我试图使用幻灯片母版的“保留”属性来清除未引用的幻灯片母版 我的目标是将演示文稿(只有一张幻灯片)中的所有幻灯片克隆到基础演示文稿(只有一张幻灯片),并将克隆幻灯片的布局更改为基础演示文稿的布局 我的做法是, (基本表示法表示为B,待克隆表示法表示为C) 将C幻灯片的幻灯片部分复制到B中 将C的母版复制到B中 在新复制的主控形状中,将SlideMaster.Preserve属性设置为false 删除B中新添加的幻灯片部分(从C克隆的幻灯片)的现有布局部分 将所需的布局零件从B添加到新添加的幻灯片

我试图使用幻灯片母版的“保留”属性来清除未引用的幻灯片母版

我的目标是将演示文稿(只有一张幻灯片)中的所有幻灯片克隆到基础演示文稿(只有一张幻灯片),并将克隆幻灯片的布局更改为基础演示文稿的布局

我的做法是,

(基本表示法表示为B,待克隆表示法表示为C)

将C幻灯片的幻灯片部分复制到B中

将C的母版复制到B中

在新复制的主控形状中,将SlideMaster.Preserve属性设置为false

删除B中新添加的幻灯片部分(从C克隆的幻灯片)的现有布局部分

将所需的布局零件从B添加到新添加的幻灯片零件

遍历LayoutId并重新排序,使其包含唯一值

但是当我打开结果文件时,虽然没有引用从C复制的主幻灯片,但它仍然存在

注意:虽然我在同一代码段中更改了布局幻灯片,但实际上它将在不同的执行路径上执行,因此不处理C的主幻灯片不是一个选项

基本陈述(B)

底座主滑块

克隆演示文稿(C)

克隆演示文稿的主幻灯片

合成输出

输出主幻灯片

尽管没有对第二张主幻灯片的引用,但即使将“保留”属性设置为false,第二张主幻灯片仍然有效

可以从中加载代码示例

Post2中的文件:

BaseSlide.pptx(basepresentation)

tobeclone.pptx(克隆演示文稿)

Out2.pptx(结果演示文稿)

非常感谢您的帮助。 谢谢