Слайд

В этой статье представлена серия примеров, демонстрирующих работу со слайдами с помощью Aspose.Slides for .NET. Вы узнаете, как добавлять, получать доступ, копировать, переупорядочивать и удалять слайды, используя класс Presentation.

Каждый пример ниже содержит краткое объяснение, за которым следует фрагмент кода на C#.

Добавить слайд

Чтобы добавить новый слайд, сначала необходимо выбрать макет. В этом примере мы используем макет Blank и добавляем пустой слайд в презентацию.

static void AddSlide()
{
    using var presentation = new Presentation();

    // Каждый слайд основан на макете, который сам основан на главном слайде.
    // Используйте макет Blank, чтобы создать новый слайд.
    var blankLayout = presentation.LayoutSlides.GetByType(SlideLayoutType.Blank);

    // Добавьте новый пустой слайд, используя выбранный макет.
    presentation.Slides.AddEmptySlide(layout: blankLayout);
}

💡 Примечание: Каждый макет слайда наследуется от главного слайда, который определяет общий дизайн и структуру заполнителей. Ниже изображение, иллюстрирующее, как главные слайды и их связанные макеты организованы в PowerPoint.

Отношения главного слайда и макета

Доступ к слайдам по индексу

Вы можете получать доступ к слайдам, используя их индекс, или найти индекс слайда по ссылке. Это полезно для перебора или изменения определенных слайдов.

static void AccessSlide()
{
    // По умолчанию при создании презентации добавляется один пустой слайд.
    using var presentation = new Presentation();

    // Добавьте еще один пустой слайд.
    var blankLayout = presentation.LayoutSlides.GetByType(SlideLayoutType.Blank);
    presentation.Slides.AddEmptySlide(layout: blankLayout);

    // Получите доступ к слайдам по индексу.
    var firstSlide = presentation.Slides[0];
    var secondSlide = presentation.Slides[1];

    // Получите индекс слайда по ссылке, затем доступ к нему по индексу.
    var secondSlideIndex = presentation.Slides.IndexOf(secondSlide);
    var secondSlideByIndex = presentation.Slides[secondSlideIndex];
}

Клонировать слайд

В этом примере показывается, как клонировать существующий слайд. Клонированный слайд автоматически добавляется в конец коллекции слайдов.

static void CloneSlide()
{
    // По умолчанию презентация содержит один пустой слайд.
    using var presentation = new Presentation();
    var firstSlide = presentation.Slides[0];

    // Клонируйте первый слайд; он будет добавлен в конец презентации.
    var clonedSlide = presentation.Slides.AddClone(sourceSlide: firstSlide);

    // Индекс клонированного слайда равен 1 (второй слайд в презентации).
    var clonedSlideIndex = presentation.Slides.IndexOf(clonedSlide);
}

Переупорядочить слайды

Вы можете изменить порядок слайдов, переместив один в новый индекс. В данном случае мы перемещаем клонированный слайд на первую позицию.

static void ReorderSlide()
{
    using var presentation = new Presentation();
    var firstSlide = presentation.Slides[0];

    // Добавьте клон первого слайда (созданный по умолчанию).
    var clonedSlide = presentation.Slides.AddClone(firstSlide);

    // Переместите клонированный слайд в первую позицию (остальные сдвигаются вниз).
    presentation.Slides.Reorder(index: 0, clonedSlide);
}

Удалить слайд

Чтобы удалить слайд, просто укажите его и вызовите Remove. В этом примере добавляется второй слайд, после чего оригинальный удаляется, оставляя только новый.

static void RemoveSlide()
{
    using var presentation = new Presentation();

    // Добавьте новый пустой слайд в дополнение к первому слайду, созданному по умолчанию.
    var blankLayout = presentation.LayoutSlides.GetByType(SlideLayoutType.Blank);
    var secondSlide = presentation.Slides.AddEmptySlide(layout: blankLayout);

    // Удалите первый слайд; останется только что добавленный слайд.
    var firstSlide = presentation.Slides[0];
    presentation.Slides.Remove(firstSlide);
}