Fusionner une Présentation

Fusion des Présentations

Lorsque vous fusionnez une présentation avec une autre, vous combinez effectivement leurs diapositives en 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 format (PPT à PPT, PPTX à PPTX, etc.) et dans des formats différents (PPT à PPTX, PPTX à ODP, etc.) entre elles.

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 Présentation a une collection Slides afin que vous puissiez appeler une méthode AddClone depuis la présentation dans laquelle vous souhaitez fusionner les diapositives.

La méthode AddClone retourne un objet ISlide, qui est un clone de la diapositive source. Les diapositives de la 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 mise en forme ou de disposition) sans vous soucier de l’impact sur les présentations sources.

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 Java vous montre comment fusionner des présentations :

Presentation pres1 = new Presentation("pres1.pptx");
try {
    Presentation pres2 = new Presentation("pres2.pptx");
    try {
        for(ISlide slide : pres2.getSlides())
        {
            pres1.getSlides().addClone(slide);
        }
    } finally {
        if (pres2 != null) pres2.dispose();
    }
    pres1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    if (pres1 != null) pres1.dispose();
}

Fusionner des Présentations avec le Maître 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 maître 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 Java démontre l’opération décrite :

Presentation pres1 = new Presentation("pres1.pptx");
try {
    Presentation pres2 = new Presentation("pres2.pptx");
    try {
        for(ISlide slide : pres2.getSlides())
        {
            pres1.getSlides().addClone(slide, pres2.getMasters().get_Item(0), true);
        }
    } finally {
        if (pres2 != null) pres2.dispose();
    }
    pres1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    if (pres1 != null) pres1.dispose();
}

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

Fusionner des Diapositives Spécifiques de Présentations

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

Presentation pres1 = new Presentation("pres1.pptx");
try {
    Presentation pres2 = new Presentation("pres2.pptx");
    try {
        for(ISlide slide : pres2.getSlides())
        {
            pres1.getSlides().addClone(slide, pres2.getLayoutSlides().get_Item(0));
        }
    } finally {
        if (pres2 != null) pres2.dispose();
    }
    pres1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    if (pres1 != null) pres1.dispose();
}

Fusionner des Présentations Avec Mise en Page de Diapositive

Ce code Java vous montre comment combiner des diapositives de présentations tout en appliquant votre mise en page préférée à celles-ci pour obtenir une seule présentation de sortie :

Presentation pres1 = new Presentation("pres1.pptx");
try {
    Presentation pres2 = new Presentation("pres2.pptx");
    try {
        for(ISlide slide : pres2.getSlides())
        {
            pres1.getSlides().addClone(slide, pres2.getLayoutSlides().get_Item(0));
        }
    } finally {
        if (pres2 != null) pres2.dispose();
    }
    pres1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    if (pres1 != null) pres1.dispose();
}

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 correspondre à la taille de l’autre présentation.

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

Presentation pres1 = new Presentation("pres1.pptx");
try {
    Presentation pres2 = new Presentation("pres2.pptx");
    try {
        pres2.getSlideSize().setSize((float)pres1.getSlideSize().getSize().getWidth(), (float)pres1.getSlideSize().getSize().getHeight(), SlideSizeScaleType.EnsureFit);

        for(ISlide slide : pres2.getSlides())
        {
            pres1.getSlides().addClone(slide);
        }
    } finally {
        if (pres2 != null) pres2.dispose();
    }
    pres1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    if (pres1 != null) pres1.dispose();
}

Fusionner des Diapositives à une Section de Présentation

Ce code Java vous montre comment fusionner une diapositive spécifique à une section dans une présentation :

Presentation pres1 = new Presentation("pres1.pptx");
try {
    Presentation pres2 = new Presentation("pres2.pptx");
    try {
        for(ISlide slide : pres2.getSlides())
        {
            pres1.getSlides().addClone(slide, pres1.getSections().get_Item(0));
        }
    } finally {
        if (pres2 != null) pres2.dispose();
    }
    pres1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    if (pres1 != null) pres1.dispose();
}

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