Fusionner des présentations PowerPoint PPT, PPTX utilisant C#

Fusion de Présentations

Lorsque vous fusionnez une présentation avec une autre, vous combinez en effet leurs diapositives dans une seule présentation pour obtenir un fichier.

Ce qui Peut Être Fusionné

Avec Aspose.Slides, vous pouvez fusionner

  • des présentations entières. Toutes les diapositives des présentations se retrouvent dans une seule présentation
  • des diapositives spécifiques. Les diapositives sélectionnées se retrouvent dans une seule présentation
  • des présentations dans un même format (PPT à PPT, PPTX à PPTX, etc.) et dans différents formats (PPT à PPTX, PPTX à ODP, etc.) les uns avec les autres.

Options de Fusion

Vous pouvez appliquer des options qui déterminent si

  • chaque diapositive dans la présentation de sortie conserve un style unique
  • un style spécifique est utilisé pour toutes les diapositives dans la présentation de sortie.

Pour fusionner des présentations, Aspose.Slides fournit des méthodes AddClone (de l’interface ISlideCollection). Il existe plusieurs implémentations des méthodes AddClone qui définissent les paramètres du processus de fusion des présentations. Chaque objet Presentation a une collection Slides, donc vous pouvez appeler une méthode AddClone depuis la présentation à laquelle vous souhaitez fusionner des diapositives.

La méthode AddClone retourne un objet ISlide, qui est un clone de la diapositive source. Les diapositives dans une présentation de sortie sont simplement une copie des diapositives de la source. Par conséquent, vous pouvez apporter des modifications aux diapositives résultantes (par exemple, appliquer des styles ou des options de formatage ou des mises en page) sans vous soucier que les présentations sources soient affectées.

Fusionner des Présentations

Aspose.Slides fournit la méthode AddClone (ISlide) qui vous permet de combiner des diapositives tout en conservant leurs mises en page et styles (paramètres par défaut).

Ce code C# vous montre comment fusionner des présentations :

using (Presentation pres1 = new Presentation("pres1.pptx"),
    pres2 = new Presentation("pres2.pptx"))
{
    foreach (ISlide slide in pres2.Slides)
    {
        pres1.Slides.AddClone(slide);
    }

    pres1.Save("combined.pptx", SaveFormat.Pptx);
}

Fusionner des Présentations avec Master de Diapositive

Aspose.Slides fournit la méthode AddClone (ISlide, IMasterSlide, Boolean) qui vous permet de combiner des diapositives tout en appliquant un modèle de présentation de master de diapositive. De cette façon, si nécessaire, vous pouvez changer le style des diapositives dans la présentation de sortie.

Ce code en C# démontre l’opération décrite :

using (Presentation pres1 = new Presentation("pres1.pptx"),
    pres2 = new Presentation("pres2.pptx"))
{
    foreach (ISlide slide in pres2.Slides)
    {
        pres1.Slides.AddClone(slide, pres2.Masters[0], allowCloneMissingLayout: true);
    }

    pres1.Save("combined.pptx", SaveFormat.Pptx);
}

Si vous souhaitez que les diapositives dans la présentation de sortie aient une mise en page de diapositive différente, utilisez la méthode AddClone (ISlide, ILayoutSlide) à la place lors de la fusion.

Fusionner des Diapositives Spécifiques À Partir de Présentations

Ce code C# vous montre comment sélectionner et combiner des diapositives spécifiques à partir de différentes présentations pour obtenir une présentation de sortie :

using (Presentation pres1 = new Presentation("pres1.pptx"),
    pres2 = new Presentation("pres2.pptx"))
{
    foreach (ISlide slide in pres2.Slides)
    {
        pres1.Slides.AddClone(slide, pres2.LayoutSlides[0]);
    }

    pres1.Save("combined.pptx", SaveFormat.Pptx);
}

Fusionner des Présentations Avec Mise en Page de Diapositive

Ce code C# vous montre comment combiner des diapositives à partir de présentations tout en appliquant votre mise en page de diapositive préférée pour obtenir une présentation de sortie :

using (Presentation pres1 = new Presentation("pres1.pptx"),
    pres2 = new Presentation("pres2.pptx"))
{
    foreach (ISlide slide in pres2.Slides)
    {
        pres1.Slides.AddClone(slide, pres2.LayoutSlides[0]);
    }

    pres1.Save("combined.pptx", SaveFormat.Pptx);
}

Fusionner des Présentations Avec Différentes Tailles de Diapositive

Pour fusionner 2 présentations avec différentes tailles de diapositive, vous devez redimensionner l’une des présentations pour que sa taille corresponde à celle de l’autre présentation.

Ce code d’exemple démontre l’opération décrite :

using (Presentation pres1 = new Presentation("pres1.pptx"),
   pres2 = new Presentation("pres2.pptx"))
{
   pres2.SlideSize.SetSize(pres1.SlideSize.Size.Width, pres1.SlideSize.Size.Height, SlideSizeScaleType.EnsureFit);
 
   foreach (ISlide slide in pres2.Slides)
   {
       pres1.Slides.AddClone(slide);
   }
 
   pres1.Save("combined.pptx", SaveFormat.Pptx);
}

Fusionner des Diapositives dans une Section de Présentation

Ce code C# vous montre comment fusionner une diapositive spécifique dans une section d’une présentation :

using (Presentation pres1 = new Presentation("pres1.pptx"),
    pres2 = new Presentation("pres2.pptx"))
{
    for (var index = 0; index < pres2.Slides.Count; index++)
    {
        ISlide slide = pres2.Slides[index];
        pres1.Slides.AddClone(slide, pres1.Sections[0]);
    }

    pres1.Save("combined.pptx", SaveFormat.Pptx);
}

La diapositive est ajoutée à la fin de la section.