Maestro de Diapositivas
¿Qué es un Maestro de Diapositivas en PowerPoint?
Un Maestro de Diapositivas es una plantilla de diapositiva que define el diseño, estilos, tema, fuentes, fondo y otras propiedades para las diapositivas en una presentación. Si deseas crear una presentación (o serie de presentaciones) con el mismo estilo y plantilla para tu empresa, puedes usar un maestro de diapositivas.
Un Maestro de Diapositivas es útil porque te permite establecer y cambiar el aspecto de todas las diapositivas de la presentación a la vez. Aspose.Slides admite el mecanismo de Maestro de Diapositivas de PowerPoint.
VBA también te permite manipular un Maestro de Diapositivas y ejecutar las mismas operaciones admitidas en PowerPoint: cambiar fondos, agregar formas, personalizar el diseño, etc. Aspose.Slides proporciona mecanismos flexibles que te permiten usar Maestros de Diapositivas y realizar tareas básicas con ellos.
Estas son las operaciones básicas de Maestro de Diapositivas:
- Crear o editar Maestro de Diapositivas.
- Aplicar Maestros de Diapositivas a las diapositivas de la presentación.
- Cambiar el fondo del Maestro de Diapositivas.
- Agregar una imagen, un marcador de posición, Smart Art, etc. al Maestro de Diapositivas.
Estas son operaciones más avanzadas que involucran el Maestro de Diapositivas:
- Comparar Maestros de Diapositivas.
- Fusionar Maestros de Diapositivas.
- Aplicar varios Maestros de Diapositivas.
- Copiar una diapositiva con Maestro de Diapositivas a otra presentación.
- Encontrar Maestros de Diapositivas duplicados en presentaciones.
- Configurar el Maestro de Diapositivas como la vista predeterminada de la presentación.
Cómo se aplica el Maestro de Diapositivas
Antes de trabajar con un maestro de diapositivas, es posible que desees entender cómo se utilizan en las presentaciones y se aplican a las diapositivas.
- Cada presentación tiene al menos un Maestro de Diapositivas por defecto.
- Una presentación puede contener varios Maestros de Diapositivas. Puedes agregar varios Maestros de Diapositivas y usarlos para dar estilo a diferentes partes de una presentación de diferentes maneras.
En Aspose.Slides, un Maestro de Diapositivas está representado por el tipo IMasterSlide.
El objeto Presentación de Aspose.Slides contiene la lista get_Masters() del tipo IMasterSlideCollection, que contiene una lista de todas las diapositivas maestras que están definidas en una presentación.
Además de las operaciones CRUD, la interfaz IMasterSlideCollection contiene estos métodos útiles: AddClone() y InsertClone(). Esos métodos son heredados de la función básica de clonación de diapositivas. Pero al tratar con Maestros de Diapositivas, esos métodos te permiten implementar configuraciones complicadas.
Cuando se agrega una nueva diapositiva a una presentación, un Maestro de Diapositivas se aplica automáticamente a ella. El Maestro de Diapositivas de la diapositiva anterior se selecciona por defecto.
Nota: Las diapositivas de la presentación se almacenan en la lista get_Slides() y cada nueva diapositiva se agrega al final de la colección por defecto. Si una presentación contiene un solo Maestro de Diapositivas, ese maestro se selecciona para todas las nuevas diapositivas. Esta es la razón por la que no tienes que definir el Maestro de Diapositivas para cada nueva diapositiva que creas.
El principio es el mismo para PowerPoint y Aspose.Slides. Por ejemplo, en PowerPoint, cuando agregas una nueva presentación, puedes simplemente presionar la línea inferior bajo la última diapositiva y luego se creará una nueva diapositiva (con el Maestro de Diapositivas de la última presentación):
En Aspose.Slides, puedes realizar la tarea equivalente con el método AddClone() de la clase Presentación.
Maestro de Diapositivas en la jerarquía de Diapositivas
El uso de Diseños de Diapositivas con Maestro de Diapositivas permite una flexibilidad máxima. Un Diseño de Diapositiva te permite establecer todos los mismos estilos que el Maestro de Diapositivas (fondo, fuentes, formas, etc.). Sin embargo, cuando varios Diseños de Diapositivas se combinan en un Maestro de Diapositivas, se crea un nuevo estilo. Cuando aplicas un Diseño de Diapositiva a una sola diapositiva, puedes cambiar su estilo del que aplica el Maestro de Diapositivas.
El Maestro de Diapositivas prevalece sobre todos los elementos de configuración: Maestro de Diapositivas -> Diseño de Diapositiva -> Diapositiva:
Cada objeto IMasterSlide tiene una propiedad get_LayoutSlides() con una lista de Diseños de Diapositivas. Un tipo Diapositiva tiene una propiedad get_LayoutSlide() con un enlace a un Diseño de Diapositiva aplicado a la diapositiva. La interacción entre una diapositiva y el Maestro de Diapositivas ocurre a través de un Diseño de Diapositiva.
Nota
- En Aspose.Slides, todas las configuraciones de las diapositivas (Maestro de Diapositivas, Diseño de Diapositiva y la diapositiva en sí) son en realidad objetos de diapositiva que implementan la interfaz IBaseSlide.
- Por lo tanto, el Maestro de Diapositivas y el Diseño de Diapositiva pueden implementar las mismas propiedades y necesitas saber cómo se aplicarán sus valores a un objeto Diapositiva. El Maestro de Diapositivas se aplica primero a una diapositiva y luego se aplica el Diseño de Diapositiva. Por ejemplo, si el Maestro de Diapositivas y el Diseño de Diapositiva tienen ambos un valor de fondo, la diapositiva terminará con el fondo del Diseño de Diapositiva.
Qué comprende un Maestro de Diapositivas
Para entender cómo se puede cambiar un Maestro de Diapositivas, necesitas conocer sus componentes. Estas son las propiedades centrales de MasterSlide.
- get(set)_Background() - obtener/establecer el fondo de la diapositiva.
- get(set)_BodyStyle - obtener/establecer los estilos de texto del cuerpo de la diapositiva.
- get(set)_Shapes - obtener/establecer todas las formas del Maestro de Diapositivas (marcadores de posición, marcos de imágenes, etc.).
- get(set)_Controls - obtener/establecer controles ActiveX.
- get_ThemeManager() - obtener el administrador de temas.
- get_HeaderFooterManager() - obtener el administrador de encabezados y pies de página.
Métodos del Maestro de Diapositivas:
- GetDependingSlides - obtener todas las diapositivas que dependen del Maestro de Diapositivas.
- ApplyExternalThemeToDependingSlides - te permite crear un nuevo Maestro de Diapositivas basado en el Maestro de Diapositivas actual y un nuevo tema. El nuevo Maestro de Diapositivas se aplicará a todas las diapositivas dependientes.
Obtener Maestro de Diapositivas
En PowerPoint, el Maestro de Diapositivas se puede acceder desde el menú Ver -> Maestro de Diapositivas:
Usando Aspose.Slides, puedes acceder a un Maestro de Diapositivas de esta manera:
System::SharedPtr<IMasterSlide> master = pres->get_Masters()->idx_get(0);
La interfaz IMasterSlide representa un Maestro de Diapositivas. La propiedad get_Masters() (relacionada con el tipo IMasterSlideCollection) contiene una lista de todos los Maestros de Diapositivas que están definidos en la presentación.
Agregar Imagen al Maestro de Diapositivas
Cuando agregas una imagen a un Maestro de Diapositivas, esa imagen aparecerá en todas las diapositivas que dependan de ese maestro de diapositivas.
Por ejemplo, puedes colocar el logotipo de tu empresa y algunas imágenes en el Maestro de Diapositivas y luego volver al modo de edición de la diapositiva. Deberías ver la imagen en cada diapositiva.
Puedes agregar imágenes a un maestro de diapositivas con Aspose.Slides:
System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>();
System::SharedPtr<IPPImage> image = pres->get_Images()->AddImage(System::IO::File::ReadAllBytes(u"image.png"));
pres->get_Master(0)->get_Shapes()->AddPictureFrame(ShapeType::Rectangle, 10.0f, 10.0f, 100.0f, 100.0f, image);
pres->Save(u"pres.pptx", SaveFormat::Pptx);
Ver también
Para obtener más información sobre cómo agregar imágenes a una diapositiva, consulta el artículo Marco de Imagen.Agregar Marcador de Posición al Maestro de Diapositivas
Estos campos de texto son marcadores de posición estándar en un Maestro de Diapositivas:
-
Haga clic para editar el estilo del título del Maestro
-
Editar los estilos de texto del Maestro
-
Segundo nivel
-
Tercer nivel
También aparecen en las diapositivas basadas en el Maestro de Diapositivas. Puedes editar esos marcadores de posición en un Maestro de Diapositivas y los cambios se aplican automáticamente a las diapositivas.
En PowerPoint, puedes agregar un marcador de posición a través de la ruta Maestro de Diapositivas -> Insertar Marcador de Posición:
Examinemos un ejemplo más complicado de marcadores de posición con Aspose.Slides. Considera una diapositiva con marcadores de posición plantillados desde el Maestro de Diapositivas:
Queremos cambiar el formato del Título y el Subtítulo en el Maestro de Diapositivas de esta manera:
Primero, recuperamos el contenido del marcador de posición del título desde el objeto Maestro de Diapositivas y luego usamos el campo PlaceHolder.FillFormat
:
System::SharedPtr<IAutoShape> FindPlaceholder(System::SharedPtr<IMasterSlide> master, PlaceholderType type)
{
for (auto& shape : master->get_Shapes())
{
System::SharedPtr<IAutoShape> autoShape = System::AsCast<Aspose::Slides::IAutoShape>(shape);
if (autoShape != nullptr)
{
if (autoShape->get_Placeholder()->get_Type() == type)
{
return autoShape;
}
}
}
return nullptr;
}
void Main()
{
auto pres = System::MakeObject<Presentation>();
System::SharedPtr<IMasterSlide> master = pres->get_Masters()->idx_get(0);
System::SharedPtr<IAutoShape> placeHolder = FindPlaceholder(master, Aspose::Slides::PlaceholderType::Title);
auto fillFormat = placeHolder->get_FillFormat();
fillFormat->set_FillType(Aspose::Slides::FillType::Gradient);
auto gradientFormat = fillFormat->get_GradientFormat();
gradientFormat->set_GradientShape(Aspose::Slides::GradientShape::Linear);
gradientFormat->get_GradientStops()->Add(0.0f, System::Drawing::Color::FromArgb(255, 0, 0));
gradientFormat->get_GradientStops()->Add(255.0f, System::Drawing::Color::FromArgb(128, 0, 128));
pres->Save(u"pres.pptx", Aspose::Slides::Export::SaveFormat::Pptx);
}
El estilo y formato del título cambiarán para todas las diapositivas basadas en el maestro de diapositivas:
Cambiar el Fondo en el Maestro de Diapositivas
Cuando cambias el color de fondo de un maestro de diapositivas, todas las diapositivas normales en la presentación recibirán el nuevo color. Este código C++ demuestra la operación:
auto pres = System::MakeObject<Presentation>();
auto master = pres->get_Masters()->idx_get(0);
auto background = master->get_Background();
background->set_Type(Aspose::Slides::BackgroundType::OwnBackground);
background->get_FillFormat()->set_FillType(Aspose::Slides::FillType::Solid);
background->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Green());
pres->Save(u"pres.pptx", Aspose::Slides::Export::SaveFormat::Pptx);
Ver también
Clonar Maestro de Diapositivas a Otra Presentación
Para clonar un Maestro de Diapositivas a otra presentación, llama al método AddClone() de la presentación de destino junto con un Maestro de Diapositivas pasado a él. Este código C++ te muestra cómo clonar un Maestro de Diapositivas a otra presentación:
auto presSource = System::MakeObject<Presentation>();
auto presTarget = System::MakeObject<Presentation>();
auto master = presTarget->get_Masters()->AddClone(presSource->get_Masters()->idx_get(0));
Agregar Múltiples Maestros de Diapositivas a la Presentación
Aspose.Slides te permite agregar varios Maestros de Diapositivas y Diseños de Diapositivas a cualquier presentación dada. Esto te permite configurar estilos, diseños y opciones de formato para las diapositivas de la presentación de muchas maneras.
En PowerPoint, puedes agregar nuevos Maestros de Diapositivas y Diseños (desde el menú “Maestro de Diapositivas) de esta manera:
Usando Aspose.Slides, puedes agregar un nuevo Maestro de Diapositivas llamando al método AddClone():
pres->get_Masters()->AddClone(pres->get_Masters()->idx_get(0));
Comparar Maestros de Diapositivas
Un Maestro de Diapositivas implementa la interfaz IBaseSlide que contiene el método Equals(), que se puede utilizar para comparar diapositivas. Devuelve true
para los Maestros de Diapositivas idénticos en estructura y contenido estático.
Dos Maestros de Diapositivas son iguales si sus formas, estilos, textos, animaciones y otras configuraciones son iguales. La comparación no tiene en cuenta los valores de identificador único (por ejemplo, SlideId) y contenido dinámico (por ejemplo, valor de fecha actual en Marcador de Posición de Fecha).
Establecer Maestro de Diapositivas como Vista Predeterminada de la Presentación
Aspose.Slides te permite establecer un Maestro de Diapositivas como la vista predeterminada para una presentación. La vista predeterminada es lo que ves primero cuando abres una presentación.
Este código te muestra cómo establecer un Maestro de Diapositivas como la vista predeterminada de una presentación en C++:
pres->get_ViewProperties()->set_LastView(Aspose::Slides::ViewType::SlideMasterView);
Eliminar Maestro de Diapositivas No Utilizado
Aspose.Slides proporciona el método RemoveUnusedMasterSlides() (de la clase Compress) para permitirte eliminar maestros de diapositivas no deseados y no utilizados. Este código C++ te muestra cómo eliminar un maestro de diapositivas de una presentación de PowerPoint:
auto pres = System::MakeObject<Presentation>(u"pres.pptx");
LowCode::Compress::RemoveUnusedMasterSlides(pres);
pres->Save(u"pres-out.pptx", SaveFormat::Pptx);