La animación es una función proporcionada por Microsoft PowerPoint que hace que las presentaciones sean más atractivas y divertidas. También se puede usar para resaltar diferentes elementos en la diapositiva para llamar la atención de la audiencia. Puede agregar animaciones a texto, formas y otros elementos en las diapositivas. En este artículo, aprenderá cómo aplicar animación al texto en archivos de PowerPoint usando C++.

API de C++ para aplicar animación a texto en archivos de PowerPoint

Usaremos la API Aspose.Slides for C++ para aplicar animación de texto en archivos de PowerPoint. Es una API robusta y rica en funciones para crear, leer y modificar archivos PPTX/PPT de PowerPoint sin necesidad de instalar Microsoft PowerPoint. Puede instalar la API a través de NuGet o descargarla directamente desde la sección Descargas.

PM> Install-Package Aspose.Slides.Cpp

Aplicar animación al texto en archivos de PowerPoint usando C++

Aspose.Slides for C++ admite más de 150 efectos de animación, como Expand, Fade, Blink, Zoom, etc. Además, también proporciona efectos de animación específicos como OLEObjectShow y OLEObjectOpen. Puede ver la lista completa de efectos de animación admitidos en la enumeración EffectType.

Para aplicar animación al texto en presentaciones de PowerPoint, siga los pasos que se indican a continuación.

El siguiente código de ejemplo muestra cómo aplicar un efecto de animación al texto en presentaciones de PowerPoint usando C++.

// Rutas de archivo
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\ApplyTextAnimation.pptx";

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

// Accede a la forma
SharedPtr<IAutoShape> autoShape = System::DynamicCast_noexcept<Aspose::Slides::IAutoShape>(presentation->get_Slides()->idx_get(0)->get_Shapes()->idx_get(0));

// Accede al párrafo
auto paragraph = autoShape->get_TextFrame()->get_Paragraphs()->idx_get(0);

// Agrega el efecto
auto effect = presentation->get_Slides()->idx_get(0)->get_Timeline()->get_MainSequence()->AddEffect(paragraph, EffectType::Fly, EffectSubtype::Left, EffectTriggerType::OnClick);

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

Obtenga efectos de animación de archivos de PowerPoint usando C++

Puede recuperar los efectos de animación ya aplicados a un texto siguiendo los pasos que se indican a continuación.

El siguiente código de ejemplo muestra cómo obtener los efectos de animación de un texto en presentaciones de PowerPoint usando C++.

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

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

// Obtener la secuencia
auto sequence = presentation->get_Slides()->idx_get(0)->get_Timeline()->get_MainSequence();

// Accede a la forma
SharedPtr<IAutoShape> autoShape = System::DynamicCast_noexcept<Aspose::Slides::IAutoShape>(presentation->get_Slides()->idx_get(0)->get_Shapes()->idx_get(0));

// Bucle a través de los párrafos
for (SharedPtr<IParagraph> paragraph : autoShape->get_TextFrame()->get_Paragraphs())
{
	// Obtener los efectos
	auto effects = sequence->GetEffectsByParagraph(paragraph);
	if (effects->get_Length() > 0)
	{
		// Imprimir en la consola
		Console::WriteLine(String::Format(u"Paragraph {0} has {1} effect.", paragraph->get_Text(), effects->idx_get(0)->get_Type()));
	}
}

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, aprendió cómo agregar efectos de animación al texto en presentaciones de PowerPoint usando C++. Además, ha visto cómo recuperar efectos de animación de texto en presentaciones de PowerPoint. Aspose.Slides for C++ proporciona muchas características adicionales que puede explorar en detalle visitando la documentación oficial. Si tiene alguna pregunta, no dude en comunicarse con nosotros en nuestro foro de soporte gratuito.

Ver también