C#: Insert, Retrieve, Reorder and Remove Slides in PowerPoint Sections

Sections in PowerPoint let you group related slides together, making it easy to segment a presentation by topics, chapters, or any other logical structure. When working with large, multi-section presentations, automating slide operations - such as insertion, retrieval, reordering, and removal - can significantly improve productivity. In this article, we will explain how to insert, retrieve, reorder, and remove slides in PPT sections in C# using Spire.Presentation for .NET.

Install Spire.Presentation for .NET

To begin with, you need to add the DLL files included in the Spire.Presentation for.NET package as references in your .NET project. The DLL files can be either downloaded from this link or installed via NuGet.

PM> Install-Package Spire.Presentation

Insert Slides into a PowerPoint Section in C#

Inserting slides is often needed when you need to add new content to a section. With Spire.Presentation for .NET, you can insert a slide into a section using the Section.Insert() method. The detailed steps are as follows.

  • Create an instance of the Presentation class.
  • Load a PowerPoint presentation using the Presentation.LoadFromFile() method.
  • Get a specific section through its index (0-based) using the Presentation.SectionList(index) property.
  • Add a new slide to presentation, then insert it into the section using the Section.Insert() method.
  • Remove the added slide from the presentation.
  • Save the resulting presentation using the Presentation.SaveToFile() method.
  • C#
using Spire.Presentation;
using System.Collections.Generic;

namespace InsertSlidesInSection
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an instance of the Presentation class
            using (Presentation presentation = new Presentation())
            {
                // Load a PowerPoint presentation
                presentation.LoadFromFile("Example.pptx");

                // Access the first section
                Section firstSection = presentation.SectionList[0];

                // Add a new slide to the presentation and insert it at the start of the section
            ISlide slide = presentation.Slides.Append();
            firstSection.Insert(0, slide);
            // Remove the added slide from the presentation
            presentation.Slides.Remove(slide);

                // Save the modified presentation
                presentation.SaveToFile("InsertSlidesInSection.pptx", FileFormat.Pptx2016);
            }
        }
    }
}

Insert Slides into a PowerPoint Section in C#

Retrieve Slides from a PowerPoint Section in C#

Extracting slides from a specific section allows you to focus on a subset of slides for targeted operations, like slide reordering or applying specific formatting. Using the Section.GetSlides() method in Spire.Presentation for .NET, you can easily retrieve all slides within a given section. The detailed steps are as follows.

  • Create an instance of the Presentation class.
  • Load a PowerPoint presentation using the Presentation.LoadFromFile() method.
  • Get a specific section through its index (0-based) using the Presentation.SectionList(index) property.
  • Retrieve the slides within the section using the Section.GetSlides() method.
  • Iterate through the retrieved slides and get the slide number (1-based) of each slide.
  • C#
using Spire.Presentation;
using System;

namespace RetrieveSlidesInSection
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an instance of the Presentation class
            using (Presentation presentation = new Presentation())
            {
                // Load a PowerPoint presentation
                presentation.LoadFromFile("Example.pptx");

                // Retrieve the slides in the 3rd section
                Section section = presentation.SectionList[2];
                ISlide[] slides = section.GetSlides();

                // Output the slide number for each slide in the section
                foreach (ISlide slide in slides)
                {
                    Console.Write(slide.SlideNumber + " ");
                }                               
                Console.ReadKey();
            }
        }
    }
}

Retrieve Slides from a PowerPoint Section in C#

Reorder Slides in a PowerPoint Section in C#

Reordering slides is essential for ensuring that related content follows a logical sequence. Spire.Presentation for .NET offers the Section.Move() method for moving a slide in a section to another position. The detailed steps are as follows.

  • Create an instance of the Presentation class.
  • Load a PowerPoint presentation using the Presentation.LoadFromFile() method.
  • Get a specific section through its index (0-based) using the Presentation.SectionList(index) property.
  • Move a specific slide in the section to another position using the Section.Move() method.
  • Save the resulting presentation using the Presentation.SaveToFile() method.
  • C#
using Spire.Presentation;

namespace ReorderSlidesInSection
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an instance of the Presentation class
            using (Presentation presentation = new Presentation())
            {
		   // Load a PowerPoint presentation
                presentation.LoadFromFile("Example.pptx");

                // Access the 3rd section
                Section section = presentation.SectionList[2];

                // Retrieve the slides in the section
                ISlide[] slides = section.GetSlides();

                // Move the 1st slide in the section to the specified position
                section.Move(2, slides[0]);                                  

                // Save the modified presentation
                presentation.SaveToFile("ReorderSlidesInSection.pptx", FileFormat.Pptx2016);
            }
        }
    }
}

Reorder Slides in a PowerPoint Section in C#

Remove Slides from a PowerPoint Section in C#

Removing slides from a section helps streamline your presentation, especially when certain slides become outdated or irrelevant. With the Section.RemoveAt() or Section.RemoveRange() method in Spire.Presentation for .NET, you can easily delete an individual slide or a range of slides from a section. The detailed steps are as follows.

  • Create an instance of the Presentation class.
  • Load a PowerPoint presentation using the Presentation.LoadFromFile() method.
  • Get a specific section through its index (0-based) using the Presentation.SectionList(index) property.
  • Remove a specific slide or a range of slides from the presentation using the Section.RemoveAt() or Section.RemoveRange() method.
  • Save the resulting presentation using the Presentation.SaveToFile() method.
  • C#
using Spire.Presentation;

namespace RemoveSlidesInSection
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an instance of the Presentation class
            using (Presentation presentation = new Presentation())
            {
                // Load a PowerPoint presentation
                presentation.LoadFromFile("Course.pptx");

                // Access the 3rd section
                Section section = presentation.SectionList[2];
                
                // Remove the first slide from the section
                section.RemoveAt(0);

                // Or remove a range of slides from the section
                //section.RemoveRange(0, 2);

                // Save the modified presentation
                presentation.SaveToFile("RemoveSlidesInSection.pptx", FileFormat.Pptx2016);
            }
        }
    }
}

Apply for a Temporary License

If you'd like to remove the evaluation message from the generated documents, or to get rid of the function limitations, please request a 30-day trial license for yourself.