Cloner des diapositives dans PowerPoint C#

Dans certains cas, vous devrez peut-être cloner les diapositives dans les présentations PowerPoint. Le processus de clonage permet de copier une diapositive dans ou dans une autre présentation sans modifier la diapositive d’origine. Dans cet article, vous apprendrez à automatiser le clonage de diapositives dans les présentations PowerPoint. En particulier, l’article expliquera comment cloner des diapositives dans une présentation PowerPoint ou d’une présentation à une autre à l’aide de C#.

API .NET pour cloner des diapositives dans des présentations PowerPoint

Afin de cloner des diapositives dans des présentations PPTX ou PPT, nous utiliserons Aspose.Slides for .NET. Il s’agit d’une API de manipulation de présentation qui vous permet de créer, modifier et convertir des présentations PowerPoint et OpenOffice. Vous pouvez soit télécharger l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Slides.NET

Cloner des diapositives dans une présentation PowerPoint en C#

Vous pouvez cloner une diapositive à un emplacement spécifié ou à la fin de la présentation PowerPoint. Les sections suivantes illustrent chacun des scénarios mentionnés ci-dessus avec des exemples de code.

Cloner la diapositive à la fin de la présentation

Voici les étapes pour cloner une diapositive à la fin d’une présentation PowerPoint à l’aide de C#.

  1. Tout d’abord, chargez la présentation PowerPoint à l’aide de la classe Presentation.
  2. Obtenez la référence de la collection de diapositives à l’aide de Presentation.Slides dans un objet ISlideCollection.
  3. Clonez la diapositive souhaitée à l’aide de la méthode ISlideCollection.AddClone(ISlide) en spécifiant la diapositive à cloner en tant que paramètre.
  4. Enfin, enregistrez la présentation à l’aide de la méthode Presentation.Save(String, SaveFormat).

L’exemple de code suivant montre comment cloner une diapositive à la fin de la présentation PowerPoint.

// Charger le fichier de présentation
using (Presentation pres = new Presentation("input.pptx"))
{
    // Cloner la diapositive souhaitée à la fin de la collection de diapositives dans la même présentation
    ISlideCollection slds = pres.Slides;
    slds.AddClone(pres.Slides[0]);

    // Enregistrer la présentation
    pres.Save("output.pptx", SaveFormat.Pptx);

}

Cloner la diapositive à une position spécifique dans la présentation

Voici les étapes pour cloner une diapositive à une position spécifique dans la présentation PowerPoint à l’aide de C#.

  1. Chargez la présentation PowerPoint à l’aide de la classe Presentation.
  2. Obtenez la référence de la collection de diapositives à l’aide de Presentation.Slides dans un objet ISlideCollection.
  3. Clonez la diapositive souhaitée à l’aide de la méthode ISlideCollection.InsertClone(Int32, ISlide) en spécifiant l’index de destination et la diapositive à cloner en tant que paramètres.
  4. Enregistrez la présentation à l’aide de la méthode Presentation.Save(String, SaveFormat).

L’exemple de code suivant montre comment cloner une diapositive à un emplacement spécifique dans une présentation PowerPoint.

// Charger le fichier de présentation
using (Presentation pres = new Presentation("input.pptx"))
{
    // Accéder à une collection de diapositives dans la même présentation
    ISlideCollection slds = pres.Slides;
    
    // Cloner la diapositive souhaitée à l'index spécifié dans la même présentation
    slds.InsertClone(2, pres.Slides[1]);

    // Enregistrer la présentation
    pres.Save("output.pptx", SaveFormat.Pptx);

}

Cloner des diapositives dans une autre présentation à l’aide de C#

Dans cette section, vous apprendrez à cloner une diapositive d’une présentation à une autre. Les sous-sections suivantes couvriront le clonage d’une diapositive à la fin ou à une position spécifique dans la présentation de destination.

Cloner la diapositive à la fin d’une autre présentation

Voici les étapes pour cloner une diapositive à la fin d’une autre présentation à l’aide de C#.

  1. Chargez la présentation PowerPoint source à l’aide de la classe Presentation.
  2. Chargez la présentation PowerPoint de destination à l’aide de la classe Presentation.
  3. Récupère la référence de la collection de diapositives de la présentation de destination dans un objet ISlideCollection.
  4. Clonez la diapositive souhaitée à l’aide de la méthode ISlideCollection.AddClone(ISlide) en spécifiant la diapositive à cloner en tant que paramètre.
  5. Enregistrez la présentation de destination à l’aide de la méthode Presentation.Save(String, SaveFormat).

L’exemple de code suivant montre comment cloner une diapositive d’une présentation à une autre.

// Charger le fichier de présentation source
using (Presentation srcPres = new Presentation("source.pptx"))
{
    // Charger la présentation de destination (où la diapositive doit être clonée)
    using (Presentation destPres = new Presentation("destination.pptx"))
    {
        // Cloner la diapositive souhaitée de la présentation source à la fin de la collection de diapositives dans la présentation de destination
        ISlideCollection slds = destPres.Slides;
        slds.AddClone(srcPres.Slides[0]);

        // Enregistrer la présentation
        destPres.Save("destination_out.pptx", SaveFormat.Pptx);
    }
}

Cloner une diapositive vers une position spécifique dans une autre présentation

Voici les étapes pour cloner une diapositive à un emplacement spécifique dans une autre présentation à l’aide de C#.

  1. Chargez la présentation PowerPoint source à l’aide de la classe Presentation.
  2. Chargez la présentation PowerPoint de destination à l’aide de la classe Presentation.
  3. Récupère la référence de la collection de diapositives de la présentation de destination dans un objet ISlideCollection.
  4. Clonez la diapositive souhaitée à l’aide de la méthode ISlideCollection.InsertClone(Int32, ISlide) en spécifiant l’index de destination et la diapositive à cloner en tant que paramètres.
  5. Enregistrez la présentation de destination à l’aide de la méthode Presentation.Save(String, SaveFormat).

L’exemple de code suivant montre comment cloner une diapositive dans une autre présentation PowerPoint.

// Charger le fichier de présentation source
using (Presentation srcPres = new Presentation("source.pptx"))
{
    // Charger la présentation de destination (où la diapositive doit être clonée)
    using (Presentation destPres = new Presentation("destination.pptx"))
    {
        // Cloner la diapositive souhaitée de la présentation source à l'emplacement spécifié dans la présentation de destination
        ISlideCollection slds = destPres.Slides;
        slds.InsertClone(2, srcPres.Slides[0]);

        // Enregistrer la présentation
        destPres.Save("destination_out.pptx", SaveFormat.Pptx);
    }
}

Obtenez une licence API gratuite

Vous pouvez utiliser Aspose.Slides for .NET sans limitation d’évaluation en demandant une licence temporaire.

Conclusion

Dans cet article, vous avez appris à cloner des diapositives dans des présentations PowerPoint à l’aide de C#. L’article traitait explicitement du clonage de diapositives au sein d’une présentation ou d’une présentation à une autre. De plus, vous pouvez visiter la documentation pour explorer d’autres fonctionnalités de l’API. N’hésitez pas non plus à nous faire part de vos questions via notre forum.

Voir également

Conseil : vous pouvez consulter Aspose FREE PowerPoint Splitter utilisé pour diviser les diapositives dans les présentations et les enregistrer en tant que fichiers séparés.