SmartArt används för att förbättra upplevelsen av PowerPoint-presentationer och för att presentera data visuellt. Den kan användas för att göra texten mer framträdande och tilltalande och även användas för att visa flödesdiagram, processer, relationsdiagram etc. I den här artikeln får du lära dig hur du skapar SmartArt i PowerPoint-presentationer med C++.

C++ API för att skapa SmartArt i PowerPoint-presentationer

Aspose.Slides for C++ är ett C++ API för att arbeta med PowerPoint-filer. Det låter dig skapa, läsa och ändra PPT- och PPTX-filer utan att behöva ytterligare programvara. Dessutom stöder API:et att skapa SmartArt i PowerPoint-presentationer. Du kan antingen installera API:t genom NuGet eller ladda ner det direkt från avsnittet Nedladdningar.

PM> Install-Package Aspose.Slides.Cpp

Skapa en SmartArt-form i PowerPoint med C++

Följande är stegen för att skapa en SmartArt-form i PowerPoint-presentationer.

Följande exempelkod visar hur du skapar en SmartArt-form i PowerPoint med C++.

// Sökväg
const String outputFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";

// Ladda presentationsfilen
SharedPtr<Presentation> presentation = MakeObject<Presentation>();

// Hämta den första bilden
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Lägg till SmartArt
auto smartArt = slide->get_Shapes()->AddSmartArt(0, 0, 400, 400, Aspose::Slides::SmartArt::SmartArtLayoutType::BasicBlockList);

smartArt->get_AllNodes()->idx_get(0)->get_TextFrame()->set_Text(u"First Block");
smartArt->get_AllNodes()->idx_get(1)->get_TextFrame()->set_Text(u"Second Block");

// Spara presentation
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Skapa SmartArt i PowerPoint-presentationer med C++

Bild av utdata som genereras av exempelkoden

Få tillgång till en SmartArt-form i PowerPoint-presentation

Du kan komma åt SmartArt-formerna i PowerPoint-filer genom att följa stegen nedan.

  • Ladda PowerPoint-filen med klassen Presentation.
  • Slinga genom formerna.
  • Om formen är av typen ISmartArt, får du dess referens som ett ISmartArt-objekt.

Följande exempelkod visar hur du kommer åt en SmartArt-form från en PowerPoint-presentation med C++.

// Sökväg
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";

// Ladda presentationsfilen
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Slinga genom formerna
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
	// Kontrollera om formen är av typen SmartArt
	if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
	{
		// Typcast form till SmartArt
		auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);

		Console::WriteLine(String::Format(u"Shape Name: {0}", smartArt->get_Name()));

		// Kontrollerar SmartArt-layout
		/*if (smartArt->get_Layout() == SmartArtLayoutType::BasicBlockList)
		{
			Console::WriteLine(u"Do some thing here....");
		}*/
	}
}

Ändra stilen för en SmartArt-form med C++

Du kan enkelt ändra stilen på SmartArt-formen efter att ha kommit åt den. Följande är stegen för att ändra stilen för en SmartArt-form med C++.

Följande exempelkod visar hur du ändrar stilen för en SmartArt-form med C++.

// Filsökvägar
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
const String outputFilePath = u"OutputDirectory\\ChangeSmartArt_out.pptx";

// Ladda presentationsfilen
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Slinga genom formerna
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
	// Kontrollera om formen är av typen SmartArt
	if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
	{
		// Typcast form till SmartArt
		auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);

		// Kontrollera SmartArt-stilen
		if (smartArt->get_QuickStyle() == SmartArtQuickStyleType::SimpleFill) {
			// Ändra SmartArt-stil
			smartArt->set_QuickStyle(SmartArtQuickStyleType::Cartoon);
		}

		// Kontrollera SmartArt-färgtyp
		if (smartArt->get_ColorStyle() == SmartArtColorType::ColoredFillAccent1) {
			// Ändra SmartArt-färgtyp
			smartArt->set_ColorStyle(SmartArtColorType::ColorfulAccentColors);
		}
	}
}

// Spara presentation
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

Skaffa en gratis licens

För att prova API:et utan utvärderingsbegränsningar kan du begära en gratis tillfällig licens.

Slutsats

I den här artikeln har du lärt dig hur du skapar en SmartArt-form i PowerPoint-presentationer med C++. Dessutom har du sett hur du kommer åt och ändrar stilen på en SmartArt-form med Aspose.Slides för C++ API. Det är ett robust och funktionsrikt API som ger många ytterligare funktioner för att arbeta med PowerPoint-filer. Du kan utforska API:et i detalj genom att besöka den officiella dokumentationen. Om du har några frågor är du välkommen att kontakta oss på vårt gratis supportforum.

Se även