繁体   English   中英

使用 OpenXML 从 Powerpoint 演示文稿中删除所有动画 pptx SDK

[英]Remove all animations pptx from Powerpoint Presentation using OpenXML SDK

我目前正在使用OpenXML SDK编辑现有的 PowerPoint 文件 (.pptx)。 我能知道如何从我的 PowerPoint 演示文稿中删除所有动画吗?

这样做的原因是我想要一个干净的非动画 ppt 用于我的用例。 我到处都检查过,关于 animation 使用 OpenXML 的文档很少甚至没有。

谢谢。

是的,这就是我使用Timing class 的方法,非常简单。

在 VB.Net 中:

Imports Presentation = DocumentFormat.OpenXml.Presentation
Imports DocumentFormat.OpenXml.Packaging
Module Module1

    Sub Main()
        Dim fileName As String = "C:\folder\New PPTX Presentation.pptx"

        Using deck As PresentationDocument = PresentationDocument.Open(fileName, True)
            For Each slidePart As SlidePart In deck.PresentationPart.SlideParts
                Dim animationTimings As IEnumerable(Of Presentation.Timing) = slidePart.Slide.Descendants(Of Presentation.Timing)()
                For Each animationTiming As Presentation.Timing In animationTimings
                    animationTiming.Remove()
                Next
            Next
        End Using

    End Sub
End Module

在 C#:

using Presentation = DocumentFormat.OpenXml.Presentation;
using DocumentFormat.OpenXml.Packaging;

static class Module1
{
    public static void Main()
    {
        string fileName = @"C:\folder\New PPTX Presentation.pptx";

        using (PresentationDocument deck = PresentationDocument.Open(fileName, true))
        {
            foreach (SlidePart slidePart in deck.PresentationPart.SlideParts)
            {
                IEnumerable<Presentation.Timing> animationTimings = slidePart.Slide.Descendants<Presentation.Timing>();
                foreach (Presentation.Timing animationTiming in animationTimings)
                    animationTiming.Remove();
            }
        }
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM