PowerPoint-presentationer används i många scenarier som möten, presentationer, diskussioner etc. Det kan finnas situationer där du har olika presentationer skapade av olika personer eller har individuella presentationer som används i olika möten. Du kan behöva slå samman dessa presentationer för delning eller dokumentation. Att göra denna uppgift manuellt skulle vara tidskrävande. Det effektiva sättet skulle vara att uppnå detta programmässigt. I den här artikeln kommer du att lära dig hur du slår samman PowerPoint-presentationer med C++.
- C++ API för att slå samman PowerPoint-presentationer
- Slå samman PowerPoint-presentationer med C++
- Slå samman specifika PowerPoint-bilder med C++
- Använd Slide Master för att slå samman PowerPoint-presentationer
- Skaffa en gratis licens
C++ API för att slå samman PowerPoint-presentationer
Aspose.Slides for C++ är ett C++-bibliotek som tillhandahåller en massa funktioner för att arbeta med PowerPoint-presentationer. API:et låter dig skapa, ändra och konvertera PowerPoint-presentationer utan att använda Microsoft PowerPoint. Dessutom ger API:et möjlighet att slå samman olika PowerPoint-filer. Du kan antingen installera API:t genom NuGet eller ladda ner det direkt från avsnittet Nedladdningar.
PM> Install-Package Aspose.Slides.Cpp
Slå samman PowerPoint-presentationer med C++
Processen för att slå samman två presentationer med Aspose.Slides för C++ är en bris. För att uppnå detta laddar du båda presentationerna, går igenom källpresentationsbilderna och lägger till deras klon i målpresentationen. Följande är stegen för att slå samman två PowerPoint-presentationer.
- Ladda mål PowerPoint-filen med klassen Presentation.
- Skapa en annan instans av klassen Presentation för att representera PowerPoint-källfilen.
- Hämta bilderna från källpresentationen med metoden Presentation->getSlides() och iterera över dem.
- Inuti slingan lägger du till varje bild till målpresentationen med hjälp av Presentation->getSlides()->AddClone (System::SharedPtr sourceSlide) metod.
- Spara slutligen den sammanslagna presentationsfilen med metoden Presentation->Spara (System::String name, Export::SaveFormat format).
Följande är exempelkoden för att slå samman PowerPoint-presentationer med C++.
// Sökvägen till dokumentkatalogen.
const String sourceFilePath1 = u"SourceDirectory\\SamplePresentation2.pptx";
const String sourceFilePath2 = u"SourceDirectory\\SamplePresentation3.pptx";
const String outputFilePath = u"OutputDirectory\\mergedPresentation.pptx";
// Instant presentationsklass
SharedPtr<Presentation> presentation1 = MakeObject<Presentation>(sourceFilePath1);
SharedPtr<Presentation> presentation2 = MakeObject<Presentation>(sourceFilePath2);
for (SharedPtr<ISlide> slide : presentation2->get_Slides())
{
// Slå samman bilder från källa till destination
presentation1->get_Slides()->AddClone(slide);
}
// Spara presentationen
presentation1->Save(outputFilePath, SaveFormat::Pptx);
Följande bilder visar käll-, destinations- och sammanslagna presentationsfiler.
Presentation av destination
Källpresentation
Sammanslagen presentation
Slå samman specifika PowerPoint-bilder med C++
Det kan finnas situationer där du inte är intresserad av hela presentationen utan istället vill lägga till en delmängd av bilder. För att uppnå detta lägger du till det nödvändiga villkoret medan du går igenom källpresentationsbilderna. Följande är stegen för att slå samman valda PowerPoint-bilder.
- Först laddar du in PowerPoint-målfilen med hjälp av klassen Presentation.
- Skapa en annan instans av klassen Presentation för att representera PowerPoint-källfilen.
- Hämta bilderna från källpresentationen med metoden Presentation->getSlides() och iterera över dem.
- Inuti slingan lägger du till de nödvändiga bilderna till målpresentationen med hjälp av Presentation->getSlides()->AddClone (System::SharedPtr sourceSlide) metod.
- Spara slutligen den sammanslagna presentationsfilen med metoden Presentation->Save (System::String name, Export::SaveFormat format).
Följande är exempelkoden för att slå samman valda PowerPoint-bilder med C++.
// Sökvägen till dokumentkatalogen.
const String sourceFilePath1 = u"SourceDirectory\\SamplePresentation2.pptx";
const String sourceFilePath2 = u"SourceDirectory\\SamplePresentation3.pptx";
const String outputFilePath = u"OutputDirectory\\mergedPresentation.pptx";
// Ladda presentationsfilerna
SharedPtr<Presentation> presentation1 = MakeObject<Presentation>(sourceFilePath1);
SharedPtr<Presentation> presentation2 = MakeObject<Presentation>(sourceFilePath2);
for (int i = 0; i < presentation2->get_Slides()->get_Count(); i++)
{
// Slå samman endast jämna bilder
if (i % 2 == 0)
{
presentation1->get_Slides()->AddClone(presentation2->get_Slides()->idx_get(i));
}
}
// Spara presentationen
presentation1->Save(outputFilePath, SaveFormat::Pptx);
Följande bild visar den sammanslagna presentationsfilen. Käll- och målpresentationsfilerna är desamma som i föregående exempel.
Sammanslagen presentation
Använd Slide Master för att slå samman PowerPoint-presentationer
I de två föregående exemplen var designen av både käll- och destinationspresentationen densamma. Följande bilder visar resultatet av sammanslagna presentationer med olika design.
Presentation av destination
Källpresentation
Sammanslagen presentation
Du kan se i den sammanslagna presentationsbilden att den tredje bilden behöll sin ursprungliga stil under sammanfogningsprocessen. Om du vill att källbilderna ska använda målpresentationsstilarna, använd följande steg.
- Ladda mål PowerPoint-filen med klassen Presentation.
- Skapa ytterligare en instans av klassen Presentation för att representera PowerPoint-källfilen.
- Lägg till de nödvändiga bilderna till målpresentationen med hjälp av Presentation->getSlides()->AddClone (System::SharedPtr sourceSlide, System::SharedPtr destMaster, bool allowCloneMissingLayout) metod.
- Spara slutligen den sammanslagna presentationsfilen med metoden Presentation->Save (System::String name, Export::SaveFormat format).
Följande är exempelkoden för att sammanfoga PowerPoint-presentationer med hjälp av slide master.
// Sökvägen till dokumentkatalogen.
const String sourceFilePath1 = u"SourceDirectory\\SamplePresentation.pptx";
const String sourceFilePath2 = u"SourceDirectory\\SamplePresentation3.pptx";
const String outputFilePath = u"OutputDirectory\\mergedPresentation.pptx";
// Ladda presentationsfilerna
SharedPtr<Presentation> presentation1 = MakeObject<Presentation>(sourceFilePath1);
SharedPtr<Presentation> presentation2 = MakeObject<Presentation>(sourceFilePath2);
// Sammanfoga den första bilden med hjälp av slide master
presentation1->get_Slides()->AddClone(presentation2->get_Slides()->idx_get(0), presentation1->get_Masters()->idx_get(0), true);
// Spara presentationen
presentation1->Save(outputFilePath, SaveFormat::Pptx);
Följande bild visar den sammanslagna presentationen som genereras av ovanstående exempelkod.
Sammanslagen presentation
Skaffa en gratis licens
Du kan prova API utan utvärderingsbegränsningar genom att begära en gratis tillfällig licens.
Slutsats
I den här artikeln har du lärt dig hur du slår samman flera PowerPoint-presentationer med C++. Du har sett hur man slår samman kompletta presentationer eller valda bilder. Vidare har du lärt dig hur du använder målpresentationens stil för att kombinera presentationerna. Aspose.Slides för C++ erbjuder många ytterligare funktioner för att arbeta med PowerPoint-filer. Du kan utforska API:et i detalj genom att använda den officiella dokumentationen. Om du har några frågor är du välkommen att kontakta oss på forumet.