Las presentaciones de PowerPoint se utilizan en muchos escenarios, como reuniones, presentaciones, debates, etc. Puede haber situaciones en las que tenga diferentes presentaciones creadas por distintas personas o en las que se utilicen presentaciones individuales en varias reuniones. Es posible que deba fusionar estas presentaciones para fines de documentación o uso compartido. Hacer esta tarea manualmente llevaría mucho tiempo. La forma eficiente sería lograr esto programáticamente. En este artículo, aprenderá cómo fusionar presentaciones de PowerPoint usando C++.
- API de C++ para fusionar presentaciones de PowerPoint
- Combinar presentaciones de PowerPoint usando C++
- Combinar diapositivas específicas de PowerPoint usando C++
- Utilice el patrón de diapositivas para fusionar presentaciones de PowerPoint
- Obtenga una licencia gratis
API de C++ para fusionar presentaciones de PowerPoint
Aspose.Slides for C++ es una biblioteca de C++ que proporciona un montón de funciones para trabajar con presentaciones de PowerPoint. La API le permite crear, modificar y convertir presentaciones de PowerPoint sin usar Microsoft PowerPoint. Además, la API brinda la capacidad de fusionar diferentes archivos de PowerPoint. Puede instalar la API a través de NuGet o descargarla directamente desde la sección Descargas.
PM> Install-Package Aspose.Slides.Cpp
Combinar presentaciones de PowerPoint usando C++
El proceso para fusionar dos presentaciones con Aspose.Slides for C++ es muy sencillo. Para lograr esto, carga ambas presentaciones, recorre las diapositivas de la presentación de origen y agrega su clon a la presentación de destino. Los siguientes son los pasos para fusionar dos presentaciones de PowerPoint.
- Cargue el archivo de PowerPoint de destino utilizando la clase Presentation.
- Cree otra instancia de la clase Presentation para representar el archivo fuente de PowerPoint.
- Recupere las diapositivas de la presentación de origen mediante el método Presentation->get_Slides() e itere sobre ellas.
- Dentro del ciclo, agregue cada diapositiva a la presentación de destino usando Presentation->get_Slides()->AddClone (System::SharedPtr sourceSlide) método.
- Finalmente, guarde el archivo de presentación combinado usando el método Presentation->Save (System::String name, Export::SaveFormat format).
El siguiente es el código de muestra para fusionar presentaciones de PowerPoint usando C++.
// La ruta al directorio de documentos.
const String sourceFilePath1 = u"SourceDirectory\\SamplePresentation2.pptx";
const String sourceFilePath2 = u"SourceDirectory\\SamplePresentation3.pptx";
const String outputFilePath = u"OutputDirectory\\mergedPresentation.pptx";
// Instanciar clase de presentación
SharedPtr<Presentation> presentation1 = MakeObject<Presentation>(sourceFilePath1);
SharedPtr<Presentation> presentation2 = MakeObject<Presentation>(sourceFilePath2);
for (SharedPtr<ISlide> slide : presentation2->get_Slides())
{
// Combinar diapositivas de origen a destino
presentation1->get_Slides()->AddClone(slide);
}
// Guardar la presentación
presentation1->Save(outputFilePath, SaveFormat::Pptx);
Las siguientes imágenes muestran los archivos de presentación de origen, de destino y combinados.
Presentación Destino
Presentación de la fuente
Presentación fusionada
Combinar diapositivas específicas de PowerPoint usando C++
Puede haber situaciones en las que no esté interesado en toda la presentación, sino que desee agregar un subconjunto de diapositivas. Para lograr esto, agregue la condición necesaria mientras recorre las diapositivas de la presentación de origen. Los siguientes son los pasos para fusionar las diapositivas de PowerPoint seleccionadas.
- En primer lugar, cargue el archivo de PowerPoint de destino utilizando la clase Presentation.
- Cree otra instancia de la clase Presentation para representar el archivo fuente de PowerPoint.
- Recupere las diapositivas de la presentación de origen mediante el método Presentation->get_Slides() e itere sobre ellas.
- Dentro del ciclo, agregue las diapositivas requeridas a la presentación de destino usando Presentation->get_Slides()->AddClone (System::SharedPtr sourceSlide) método.
- Finalmente, guarde el archivo de presentación combinado usando el método Presentation->Save (System::String name, Export::SaveFormat format).
El siguiente es el código de muestra para fusionar diapositivas de PowerPoint seleccionadas usando C++.
// La ruta al directorio de documentos.
const String sourceFilePath1 = u"SourceDirectory\\SamplePresentation2.pptx";
const String sourceFilePath2 = u"SourceDirectory\\SamplePresentation3.pptx";
const String outputFilePath = u"OutputDirectory\\mergedPresentation.pptx";
// Cargar los archivos de presentación
SharedPtr<Presentation> presentation1 = MakeObject<Presentation>(sourceFilePath1);
SharedPtr<Presentation> presentation2 = MakeObject<Presentation>(sourceFilePath2);
for (int i = 0; i < presentation2->get_Slides()->get_Count(); i++)
{
// Combinar solo diapositivas pares
if (i % 2 == 0)
{
presentation1->get_Slides()->AddClone(presentation2->get_Slides()->idx_get(i));
}
}
// Guardar la presentación
presentation1->Save(outputFilePath, SaveFormat::Pptx);
La siguiente imagen muestra el archivo de presentación combinado. Los archivos de presentación de origen y destino son los mismos que se usaron en el ejemplo anterior.
Presentación fusionada
Utilice el patrón de diapositivas para fusionar presentaciones de PowerPoint
En los dos ejemplos anteriores, el diseño de las presentaciones de origen y destino era el mismo. Las siguientes imágenes muestran el resultado de fusionar presentaciones con diferentes diseños.
Presentación Destino
Presentación de la fuente
Presentación fusionada
Puede ver en la imagen de la presentación fusionada que la tercera diapositiva conservó su estilo original durante el proceso de fusión. Si desea que las diapositivas de origen utilicen los estilos de presentación de destino, siga los siguientes pasos.
- Cargue el archivo de PowerPoint de destino utilizando la clase Presentation.
- Cree otra instancia de la clase Presentation para representar el archivo fuente de PowerPoint.
- Agregue las diapositivas requeridas a la presentación de destino usando Presentation->get_Slides()->AddClone (System::SharedPtr sourceSlide, System::PtrCompartido destMaster, bool allowCloneMissingLayout) método.
- Finalmente, guarde el archivo de presentación combinado usando el método Presentation->Save (System::String name, Export::SaveFormat format).
El siguiente es el código de muestra para fusionar presentaciones de PowerPoint usando el patrón de diapositivas.
// La ruta al directorio de documentos.
const String sourceFilePath1 = u"SourceDirectory\\SamplePresentation.pptx";
const String sourceFilePath2 = u"SourceDirectory\\SamplePresentation3.pptx";
const String outputFilePath = u"OutputDirectory\\mergedPresentation.pptx";
// Cargar los archivos de presentación
SharedPtr<Presentation> presentation1 = MakeObject<Presentation>(sourceFilePath1);
SharedPtr<Presentation> presentation2 = MakeObject<Presentation>(sourceFilePath2);
// Combinar la primera diapositiva usando el patrón de diapositivas
presentation1->get_Slides()->AddClone(presentation2->get_Slides()->idx_get(0), presentation1->get_Masters()->idx_get(0), true);
// Guardar la presentación
presentation1->Save(outputFilePath, SaveFormat::Pptx);
La siguiente imagen muestra la presentación fusionada generada por el código de ejemplo anterior.
Presentación fusionada
Obtenga una licencia gratis
Puede probar la API sin limitaciones de evaluación solicitando una licencia temporal gratuita.
Conclusión
En este artículo, ha aprendido a fusionar varias presentaciones de PowerPoint con C++. Ha visto cómo fusionar presentaciones completas o diapositivas seleccionadas. Además, ha aprendido a utilizar el estilo de la presentación de destino para combinar las presentaciones. Aspose.Slides for C++ ofrece muchas funciones adicionales para trabajar con archivos de PowerPoint. Puede explorar la API en detalle utilizando la documentación oficial. Si tiene alguna pregunta, no dude en contactarnos en el foro.