Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Remove all animations pptx from Powerpoint Presentation using OpenXML SDK

I'm currently working on editing my existing PowerPoint file (.pptx) using OpenXML SDK. Can I know how to remove all animations from my PowerPoint presentation?

The reason for this is I want a clean non-animated ppt for my use case. I've checked everywhere and there is minimal to no documentation regarding animation using OpenXML.

Thanks.

like image 984
user2672399 Avatar asked Feb 07 '26 22:02

user2672399


1 Answers

Yeah, here's how I do it with the Timing class, it's pretty straight-forward.

In 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

In 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();
            }
        }
    }
}
like image 156
Todd Main Avatar answered Feb 09 '26 11:02

Todd Main