Макет слайда
Эта статья демонстрирует, как работать с Layout Slides в Aspose.Slides для .NET. Макет слайда определяет дизайн и форматирование, наследуемое обычными слайдами. Вы можете добавлять, получать доступ, клонировать и удалять макеты слайдов, а также очищать неиспользуемые, чтобы уменьшить размер презентации.
Добавить макет слайда
Вы можете создать пользовательский макет слайда, чтобы определить повторно используемое форматирование. Например, можно добавить текстовое поле, которое будет отображаться на всех слайдах, использующих этот макет.
static void Add_Layout_Slide()
{
using var pres = new Presentation();
// Create a layout slide with a blank layout type and a custom name
var layoutSlide = pres.LayoutSlides.Add(pres.Masters[0], SlideLayoutType.Blank, "Main layout");
// Add a text box to the layout slide
var layoutTextBox = layoutSlide.Shapes.AddAutoShape(ShapeType.Rectangle, x: 75, y: 75, width: 150, height: 150);
layoutTextBox.TextFrame.Text = "Layout Slide Text";
// Add two slides using this layout; both will inherit the text from the layout
pres.Slides.AddEmptySlide(layoutSlide);
pres.Slides.AddEmptySlide(layoutSlide);
}
💡 Совет 1: Макеты слайдов выступают в роли шаблонов для отдельных слайдов. Вы можете определить общие элементы один раз и повторно использовать их на множестве слайдов.
💡 Совет 2: Когда вы добавляете фигуры или текст в макет слайда, все слайды, основанные на этом макете, автоматически отображают этот общий контент.
Ниже показан скриншот двух слайдов, каждый из которых наследует текстовое поле из одного и того же макета слайда.

Получить доступ к макету слайда
Макеты слайдов можно получить по индексу или по типу макета (например, Blank, Title, SectionHeader и т.д.).
static void Access_Layout_Slide()
{
using var pres = new Presentation();
// Access by index
var firstLayoutSlide = pres.LayoutSlides[0];
// Access by layout type
var blankLayoutSlide = pres.LayoutSlides.GetByType(SlideLayoutType.Blank);
}
Удалить макет слайда
Вы можете удалить конкретный макет слайда, если он больше не нужен.
static void Remove_Layout_Slide()
{
using var pres = new Presentation();
// Get a layout slide by type and remove it
var blankLayoutSlide = pres.LayoutSlides.GetByType(SlideLayoutType.Blank);
pres.LayoutSlides.Remove(blankLayoutSlide);
}
Удалить неиспользуемые макеты слайдов
Чтобы уменьшить размер презентации, можно удалить макеты слайдов, которые не используются ни одним обычным слайдом.
static void RemoveUnused_Layout_Slides()
{
using var pres = new Presentation();
// Automatically removes all layout slides not referenced by any slide
pres.LayoutSlides.RemoveUnused();
}
Клонировать макет слайда
Вы можете дублировать макет слайда с помощью метода AddClone.
static void Clone_Layout_Slides()
{
using var pres = new Presentation();
// Get an existing layout slide by type
var blankLayoutSlide = pres.LayoutSlides.GetByType(SlideLayoutType.Blank);
// Clone the layout slide to the end of the layout slide collection
var clonedLayoutSlide = pres.LayoutSlides.AddClone(blankLayoutSlide);
}
✅ Итоги: Макеты слайдов – мощный инструмент для управления единообразным форматированием на всех слайдах. Aspose.Slides предоставляет полный контроль над созданием, управлением и оптимизацией макетов слайдов.