SmartArt se utiliza para mejorar la experiencia de las presentaciones de PowerPoint y para presentar datos visualmente. Se puede usar para hacer que el texto sea más destacado y atractivo y también se puede usar para mostrar diagramas de flujo, procesos, gráficos relacionales, etc. En este artículo, aprenderá cómo crear SmartArt en presentaciones de PowerPoint usando C++.

API de C++ para crear SmartArt en presentaciones de PowerPoint

Aspose.Slides for C++ es una API de C++ para trabajar con archivos de PowerPoint. Le permite crear, leer y modificar archivos PPT y PPTX sin necesidad de software adicional. Además, la API admite la creación de SmartArt en presentaciones 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

Cree una forma SmartArt en PowerPoint usando C++

Los siguientes son los pasos para crear una forma SmartArt en presentaciones de PowerPoint.

El siguiente código de ejemplo muestra cómo crear una forma SmartArt en PowerPoint usando C++.

// Ruta de archivo
const String outputFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";

// Cargue el archivo de presentación
SharedPtr<Presentation> presentation = MakeObject<Presentation>();

// Recuperar la primera diapositiva
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Agregar arte inteligente
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");

// Guardar presentación
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Cree SmartArt en presentaciones de PowerPoint usando C++

Imagen de la salida generada por el código de muestra

Acceder a una forma SmartArt en una presentación de PowerPoint

Puede acceder a las formas SmartArt en archivos de PowerPoint siguiendo los pasos que se indican a continuación.

  • Cargue el archivo de PowerPoint usando la clase Presentation.
  • Bucle a través de las formas.
  • Si la forma es del tipo ISmartArt, obtenga su referencia como un objeto ISmartArt.

El siguiente código de ejemplo muestra cómo acceder a una forma SmartArt desde una presentación de PowerPoint mediante C++.

// Ruta de archivo
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";

// Cargue el archivo de presentación
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Bucle a través de las formas
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
	// Comprobar si la forma es de tipo SmartArt
	if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
	{
		// Tipo de forma en SmartArt
		auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);

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

		// Comprobación del diseño de SmartArt
		/*if (smartArt->get_Layout() == SmartArtLayoutType::BasicBlockList)
		{
			Console::WriteLine(u"Do some thing here....");
		}*/
	}
}

Cambiar el estilo de una forma SmartArt usando C++

Puede cambiar fácilmente el estilo de la forma SmartArt después de acceder a ella. Los siguientes son los pasos para cambiar el estilo de una forma SmartArt usando C++.

El siguiente código de ejemplo muestra cómo cambiar el estilo de una forma SmartArt mediante C++.

// Rutas de archivos
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
const String outputFilePath = u"OutputDirectory\\ChangeSmartArt_out.pptx";

// Cargue el archivo de presentación
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Bucle a través de las formas
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
	// Comprobar si la forma es de tipo SmartArt
	if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
	{
		// Tipo de forma en SmartArt
		auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);

		// Comprobar estilo SmartArt
		if (smartArt->get_QuickStyle() == SmartArtQuickStyleType::SimpleFill) {
			// Cambiar el estilo de SmartArt
			smartArt->set_QuickStyle(SmartArtQuickStyleType::Cartoon);
		}

		// Comprobar el tipo de color de SmartArt
		if (smartArt->get_ColorStyle() == SmartArtColorType::ColoredFillAccent1) {
			// Cambiar el tipo de color de SmartArt
			smartArt->set_ColorStyle(SmartArtColorType::ColorfulAccentColors);
		}
	}
}

// Guardar presentación
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

Obtenga una licencia gratis

Para probar la API sin limitaciones de evaluación, puede solicitar una licencia temporal gratuita.

Conclusión

En este artículo, ha aprendido a crear una forma SmartArt en presentaciones de PowerPoint utilizando C++. Además, ha visto cómo acceder y cambiar el estilo de una forma SmartArt utilizando Aspose.Slides for C++. Es una API robusta y rica en funciones que proporciona muchas funciones adicionales para trabajar con archivos de PowerPoint. Puede explorar la API en detalle visitando la documentación oficial. Si tiene alguna consulta, no dude en comunicarse con nosotros en nuestro foro de soporte gratuito.

Ver también