Fondo de Presentación
Los colores sólidos, los colores degradados y las imágenes se utilizan a menudo como imágenes de fondo para las diapositivas. Puedes establecer el fondo ya sea para una diapositiva normal (diapositiva única) o diapositiva maestra (varias diapositivas a la vez).
Establecer Color Sólido como Fondo para Diapositiva Normal
Aspose.Slides te permite establecer un color sólido como fondo de una diapositiva específica en una presentación (incluso si esa presentación contiene una diapositiva maestra). El cambio de fondo afecta solo a la diapositiva seleccionada.
- Crea una instancia de la clase Presentation.
- Establece el enum BackgroundType para la diapositiva en
OwnBackground
. - Establece el enum FillType para el fondo de la diapositiva en
Solid
. - Utiliza la propiedad SolidFillColor expuesta por FillFormat para especificar un color sólido para el fondo.
- Guarda la presentación modificada.
Este código C++ te muestra cómo establecer un color sólido (azul) como fondo para una diapositiva normal:
// La ruta al directorio de documentos.
const String OutPath = L"../out/SetSlideBackgroundNormal_out.pptx";
// Crea una instancia de la clase Presentation
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// Establece el color de fondo para la primera ISlide en Azul
pres->get_Slides()->idx_get(0)->get_Background()->set_Type(BackgroundType::OwnBackground);
pres->get_Slides()->idx_get(0)->get_Background()->get_FillFormat()->set_FillType(FillType::Solid);
pres->get_Slides()->idx_get(0)->get_Background()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Blue());
// Escribe la presentación en disco
pres->Save(OutPath, Aspose::Slides::Export::SaveFormat::Pptx);
Establecer Color Sólido como Fondo para Diapositiva Maestra
Aspose.Slides te permite establecer un color sólido como fondo para la diapositiva maestra en una presentación. La diapositiva maestra actúa como una plantilla que contiene y controla la configuración de formato para todas las diapositivas. Por lo tanto, cuando seleccionas un color sólido como fondo para la diapositiva maestra, ese nuevo fondo se utilizará para todas las diapositivas.
- Crea una instancia de la clase Presentation.
- Establece el enum BackgroundType para la diapositiva maestra (
Masters
) enOwnBackground
. - Establece el enum FillType para el fondo de la diapositiva maestra en
Solid
. - Utiliza la propiedad SolidFillColor expuesta por FillFormat para especificar un color sólido para el fondo.
- Guarda la presentación modificada.
Este código C++ te muestra cómo establecer un color sólido (verde bosque) como fondo para una diapositiva maestra en una presentación:
// La ruta al directorio de documentos.
const String OutPath = L"../out/SetSlideBackgroundMaster_out.pptx";
// Crea una instancia de la clase Presentation
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// Establece el color de fondo para la Master ISlide en Verde Bosque
pres->get_Masters()->idx_get(0)->get_Background()->set_Type(BackgroundType::OwnBackground);
pres->get_Masters()->idx_get(0)->get_Background()->get_FillFormat()->set_FillType(FillType::Solid);
pres->get_Masters()->idx_get(0)->get_Background()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_ForestGreen());
// Escribe la presentación en disco
pres->Save(OutPath, Aspose::Slides::Export::SaveFormat::Pptx);
Establecer Color Degradado como Fondo para Diapositiva
Un degradado es un efecto gráfico basado en un cambio gradual de color. Los colores degradados, cuando se utilizan como fondos para diapositivas, hacen que las presentaciones se vean artísticas y profesionales. Aspose.Slides te permite establecer un color degradado como fondo para las diapositivas en las presentaciones.
- Crea una instancia de la clase Presentation.
- Establece el enum BackgroundType para la diapositiva en
OwnBackground
. - Establece el enum FillType para el fondo de la diapositiva en
Gradient
. - Utiliza la propiedad GradientFormat expuesta por FillFormat para especificar tu configuración de degradado preferida.
- Guarda la presentación modificada.
Este código C++ te muestra cómo establecer un color degradado como fondo para una diapositiva:
// Crea una instancia de la clase Presentation
auto pres = System::MakeObject<Presentation>(u"SetBackgroundToGradient.pptx");
// Aplica efecto de degradado al fondo
pres->get_Slides()->idx_get(0)->get_Background()->set_Type(BackgroundType::OwnBackground);
pres->get_Slides()->idx_get(0)->get_Background()->get_FillFormat()->set_FillType(FillType::Gradient);
pres->get_Slides()->idx_get(0)->get_Background()->get_FillFormat()->get_GradientFormat()->set_TileFlip(TileFlip::FlipBoth);
// Escribe la presentación en disco
pres->Save(u"ContentBG_Grad_out.pptx", SaveFormat::Pptx);
Establecer Imagen como Fondo para Diapositiva
Además de los colores sólidos y los colores degradados, Aspose.Slides también te permite establecer imágenes como fondo para las diapositivas en las presentaciones.
- Crea una instancia de la clase Presentation.
- Establece el enum BackgroundType para la diapositiva en
OwnBackground
. - Establece el enum FillType para el fondo de la diapositiva maestra en
Picture
. - Carga la imagen que deseas usar como fondo de la diapositiva.
- Agrega la imagen a la colección de imágenes de la presentación.
- Utiliza la propiedad PictureFillFormat expuesta por FillFormat para establecer la imagen como el fondo.
- Guarda la presentación modificada.
Este código C++ te muestra cómo establecer una imagen como fondo para una diapositiva:
// La ruta al directorio de documentos.
const String templatePath = L"../templates/SetImageAsBackground.pptx";
const String imagePath = L"../templates/Tulips.jpg";
const String outPath = L"../out/ContentBG_Img_out.pptx";
// Crea una instancia de la clase Presentation
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// Establece condiciones para la imagen de fondo
pres->get_Slides()->idx_get(0)->get_Background()->set_Type(BackgroundType::OwnBackground);
pres->get_Slides()->idx_get(0)->get_Background()->get_FillFormat()->set_FillType(FillType::Picture);
pres->get_Slides()->idx_get(0)->get_Background()->get_FillFormat()->get_PictureFillFormat()->set_PictureFillMode(PictureFillMode::Stretch);
// Carga la imagen
auto image = Images::FromFile(imagePath);
// Agrega la imagen a la colección de imágenes de la presentación
SharedPtr<IPPImage> imgx = pres->get_Images()->AddImage(image);
pres->get_Slides()->idx_get(0)->get_Background()->get_FillFormat()->get_PictureFillFormat()->get_Picture()->set_Image(imgx);
// Escribe la presentación en disco
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
Cambiar Transparencia de la Imagen de Fondo
Es posible que desees ajustar la transparencia de la imagen de fondo de una diapositiva para que el contenido de la diapositiva se destaque. Este código C++ te muestra cómo cambiar la transparencia para una imagen de fondo de diapositiva:
int32_t transparencyValue = 30;
// por ejemplo
// Obtiene una colección de operaciones de transformación de imagen
auto imageTransform = slide->get_Background()->get_FillFormat()->get_PictureFillFormat()->get_Picture()->get_ImageTransform();
// Busca un efecto de transparencia con porcentaje fijo.
System::SharedPtr<AlphaModulateFixed> transparencyOperation;
for (auto&& operation : imageTransform)
{
if (System::ObjectExt::Is<AlphaModulateFixed>(operation))
{
transparencyOperation = System::ExplicitCast<AlphaModulateFixed>(operation);
break;
}
}
// Establece el nuevo valor de transparencia.
if (transparencyOperation == nullptr)
{
imageTransform->AddAlphaModulateFixedEffect(100.0f - transparencyValue);
}
else
{
transparencyOperation->set_Amount(100.0f - transparencyValue);
}
Obtener Valor del Fondo de Diapositiva
Aspose.Slides proporciona la interfaz IBackgroundEffectiveData para permitirte obtener los valores efectivos de los fondos de las diapositivas. Esta interfaz contiene información sobre el FillFormat efectivo y el EffectFormat.
Utilizando la propiedad Background de la clase BaseSlide, puedes obtener el valor efectivo para un fondo de diapositiva.
Este código C++ te muestra cómo obtener el valor efectivo del fondo de una diapositiva:
// Crea una instancia de la clase Presentation
const String templatePath = u"../templates/SamplePresentation.pptx";
auto pres = System::MakeObject<Presentation>(templatePath);
System::SharedPtr<IBackgroundEffectiveData> effBackground = pres->get_Slides()->idx_get(0)->CreateBackgroundEffective();
if (effBackground->get_FillFormat()->get_FillType() == Aspose::Slides::FillType::Solid)
{
System::Console::WriteLine(System::String(u"Color de relleno: ") + effBackground->get_FillFormat()->get_SolidFillColor());
}
else
{
System::Console::WriteLine(System::String(u"Tipo de relleno: ") + System::ObjectExt::ToString(effBackground->get_FillFormat()->get_FillType()));
}