Fusionner une Présentation - API C++ PowerPoint
Astuce
Vous voudrez peut-être jeter un œil à l’application Merger en ligne gratuite d’Aspose Merger app. Elle permet aux utilisateurs de fusionner des présentations PowerPoint dans le même format (PPT à PPT, PPTX à PPTX, etc.) et de fusionner des présentations dans différents formats (PPT à PPTX, PPTX à ODP, etc.).
Fusionner des Présentations
Lorsque vous fusionnez une présentation à une autre, vous combinez effectivement leurs diapositives dans une seule présentation pour obtenir un fichier.
Info
La plupart des programmes de présentation (PowerPoint ou OpenOffice) manquent de fonctions permettant aux utilisateurs de combiner des présentations de cette manière.
Cependant, Aspose.Slides pour C++ vous permet de fusionner des présentations de différentes manières. Vous pouvez fusionner des présentations avec toutes leurs formes, styles, textes, mises en forme, commentaires, animations, etc. sans avoir à vous soucier de la perte de qualité ou de données.
Voir aussi
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.) entre elles.
Remarque
En plus des présentations, Aspose.Slides vous permet de fusionner d’autres fichiers :
- Images, telles que JPG à JPG ou PNG à PNG
- Documents, tels que PDF à PDF ou HTML à HTML
- Et deux fichiers différents tels que image à PDF ou JPG à PDF ou TIFF à PDF.
Options de Fusion
Vous pouvez appliquer des options qui déterminent si
- chaque diapositive de la présentation de sortie conserve un style unique
- un style spécifique est utilisé pour toutes les diapositives de 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 de présentations. Chaque objet Présentation a une collection Slides, vous pouvez donc 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 mise en forme ou de mise en page) sans vous soucier que les présentations source 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 :
auto pres1 = System::MakeObject<Presentation>(u"pres1.pptx");
auto pres2 = System::MakeObject<Presentation>(u"pres2.pptx");
for (const auto& slide : pres2->get_Slides())
{
pres1->get_Slides()->AddClone(slide);
}
pres1->Save(u"combined.pptx", SaveFormat::Pptx);
Fusionner des Présentations avec le Maître de Diapositives
Aspose.Slides fournit la méthode AddClone (ISlide, IMasterSlide, bool) qui vous permet de combiner des diapositives tout en appliquant un modèle de présentation maître de diapositives. 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 :
auto pres1 = System::MakeObject<Presentation>(u"pres1.pptx");
auto pres2 = System::MakeObject<Presentation>(u"pres2.pptx");
for (const auto& slide : pres2->get_Slides())
{
pres1->get_Slides()->AddClone(slide, pres2->get_Masters()->idx_get(0), true);
}
pres1->Save(u"combined.pptx", SaveFormat::Pptx);
Remarque
La mise en page de la diapositive pour le maître de diapositives est déterminée automatiquement. Lorsqu’une mise en page appropriée ne peut pas être déterminée, si le paramètre booléenallowCloneMissingLayout
de la méthode AddClone
est défini sur vrai, la mise en page de la diapositive source est utilisée. Sinon, PptxEditException sera levée.
Si vous souhaitez que les diapositives de 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 de Présentations
Ce code C++ vous montre comment sélectionner et combiner des diapositives spécifiques de différentes présentations pour obtenir une seule présentation de sortie :
auto pres1 = System::MakeObject<Presentation>(u"pres1.pptx");
auto pres2 = System::MakeObject<Presentation>(u"pres2.pptx");
for (const auto& slide : pres2->get_Slides())
{
pres1->get_Slides()->AddClone(slide, pres2->get_LayoutSlides()->idx_get(0));
}
pres1->Save(u"combined.pptx", SaveFormat::Pptx);
Fusionner des Présentations Avec la Mise en Page des Diapositives
Ce code C++ vous montre comment combiner des diapositives de présentations tout en leur appliquant votre mise en page préférée pour obtenir une seule présentation de sortie :
auto pres1 = System::MakeObject<Presentation>(u"pres1.pptx");
auto pres2 = System::MakeObject<Presentation>(u"pres2.pptx");
for (const auto& slide : pres2->get_Slides())
{
pres1->get_Slides()->AddClone(slide, pres2->get_LayoutSlides()->idx_get(0));
}
pres1->Save(u"combined.pptx", SaveFormat::Pptx);
Fusionner des Présentations Avec Différentes Tailles de Diapositive
Remarque
Vous ne pouvez pas fusionner des présentations avec des tailles de diapositive différentes.Pour fusionner 2 présentations avec des tailles de diapositive différentes, 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 :
auto pres1 = System::MakeObject<Presentation>(u"pres1.pptx");
auto pres1Size = pres1->get_SlideSize()->get_Size();
auto pres2 = System::MakeObject<Presentation>(u"pres2.pptx");
pres2->get_SlideSize()->SetSize(pres1Size.get_Width(), pres1Size.get_Height(), SlideSizeScaleType::EnsureFit);
for (const auto& slide : pres2->get_Slides())
{
pres1->get_Slides()->AddClone(slide);
}
pres1->Save(u"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 :
auto pres1 = System::MakeObject<Presentation>(u"pres1.pptx");
auto pres2 = System::MakeObject<Presentation>(u"pres2.pptx");
for (int32_t index = 0; index < pres2->get_Slides()->get_Count(); index++)
{
auto slide = pres2->get_Slides()->idx_get(index);
pres1->get_Slides()->AddClone(slide, pres1->get_Sections()->idx_get(0));
}
pres1->Save(u"combined.pptx", SaveFormat::Pptx);
La diapositive est ajoutée à la fin de la section.