Hi,I am unable to save the following ppt file into SVG. Keep getting "Object reference not set to an instance of an object." inside the Aspose.Slide. See stack trace below:
at Aspose.Slides.Slide.( canvas, SaveOptions options)
at Aspose.Slides.Slide.SaveToSVG(Stream stream, SVGOptions svgOptions)
at Aspose.Slides.Slide.SaveToSVG(String fname, SVGOptions svgOptions)
at Aspose.Slides.Slide.SaveToSVG(String fname)
at Utils.AsposePowerPointExport.ExportToSVG(String fileName, Presentation pres)
at Utils.AsposePowerPointExport.DoExport(Object param) at Aspose.Slides.Slide.( canvas, SaveOptions options)
at Aspose.Slides.Slide.SaveToSVG(Stream stream, SVGOptions svgOptions)
at Aspose.Slides.Slide.SaveToSVG(String fname, SVGOptions svgOptions)
at Aspose.Slides.Slide.SaveToSVG(String fname)
at Utils.AsposePowerPointExport.ExportToSVG(String fileName, Presentation pres)
at Utils.AsposePowerPointExport.DoExport(Object param)
C# code to reproduce the issue:
DateTime
start = DateTime.Now;
Presentation pres = new Presentation(InputFilePath);
DateTime end = DateTime.Now;
Debug.WriteLine(string.Format("Time to load Presentation {0} sec", (end - start).TotalSeconds));
DateTime
start = DateTime.Now;
Presentation pres = new Presentation(InputFilePath);
DateTime end = DateTime.Now;
Debug.WriteLine(string.Format("Time to load Presentation {0} sec", (end - start).TotalSeconds));
DateTime
start1 = DateTime.Now;
int pageCount = pres.Slides.Count;
DateTime end1 = DateTime.Now;
Debug.WriteLine(string.Format("Time to retreive slide Count {0} sec", (end1 - start1).TotalSeconds));
DateTime start2 = DateTime.Now;
for (int i = 0; i < pageCount; i++)
{
DateTime start = DateTime.Now;
Aspose.Slides.
Slide slide = pres.GetSlideByPosition((i+1));
string filePath = string.Format("{0}{1}_{2}.svg", OutputFilePath, fileName, (i + 1));
slide.SaveToSVG(filePath);
DateTime end = DateTime.Now;
Debug.WriteLine(string.Format("Time to save one slide to SVG {0} sec", (end - start).TotalSeconds));
}
DateTime end2 = DateTime.Now;
Debug.WriteLine(string.Format("Total time to save all slides to SVG {0} sec", (end2 - start2).TotalSeconds));
DateTime
start1 = DateTime.Now;
int pageCount = pres.Slides.Count;
DateTime end1 = DateTime.Now;
Debug.WriteLine(string.Format("Time to retreive slide Count {0} sec", (end1 - start1).TotalSeconds));
DateTime start2 = DateTime.Now;
for (int i = 0; i < pageCount; i++)
{
DateTime start = DateTime.Now;
Aspose.Slides.
Slide slide = pres.GetSlideByPosition((i+1));
string filePath = string.Format("{0}{1}_{2}.svg", OutputFilePath, fileName, (i + 1));
slide.SaveToSVG(filePath);
DateTime end = DateTime.Now;
Debug.WriteLine(string.Format("Time to save one slide to SVG {0} sec", (end - start).TotalSeconds));
}
DateTime end2 = DateTime.Now;
Debug.WriteLine(string.Format("Total time to save all slides to SVG {0} sec", (end2 - start2).TotalSeconds));