We have encountered a PPTX file which Aspose.Slides 16.1 struggles with. As described in the title, on my dev machine (i7 3770K, 16GB of RAM), this file takes over 5GB of RAM and 35 minutes to open with Aspose.Slides. PowerPoint 2013 opens and displays it in about 3 seconds using 110MB of RAM.
This is the code we’re using to open the file:
var stopwatch = new Stopwatch();
using (var presentation = new Presentation(“ASDFbig.pptx”))
Console.WriteLine("Opened file in " + stopwatch.Elapsed);
Console.WriteLine(“Presentation contains " + presentation.Slides.Count + " slides”);
The slide seems to have a chart that was converted to a DrawingML shape.
That DrawingML contains about a million guide (<a:gd>) elements, most of them utterly useless (they define variables that are later redefined with no usage in between). Unfortunately, PowerPoint doesn’t remove the redundant guides when you open and resave the file. We’re currently working around this issue in our software by pre-processing files to remove redundant guides before handing the presentations off to Aspose to generate thumbnails.
The attached zip contains a Visual Studio solution and PPTX file to reproduce the issue.