Доступ к слайду в презентации
Aspose.Slides позволяет получить доступ к слайдам двумя способами: по индексу и по ID.
Доступ к слайду по индексу
Все слайды в презентации расположены по номерам в зависимости от позиции слайда, начиная с 0. Первый слайд доступен через индекс 0; второй слайд доступен через индекс 1; и так далее.
Класс Presentation, представляющий файл презентации, предоставляет все слайды в виде коллекции ISlideCollection (коллекция объектов ISlide). Этот код на C# показывает, как получить доступ к слайду через его индекс:
// Создание объекта Presentation, представляющего файл презентации
Presentation presentation = new Presentation("AccessSlides.pptx");
// Получение ссылки на слайд через его индекс
ISlide slide = presentation.Slides[0];
Доступ к слайду по ID
Каждый слайд в презентации имеет уникальный идентификатор, связанный с ним. Вы можете использовать метод GetSlideById (предоставленный классом Presentation) для получения этого ID. Этот код на C# показывает, как указать действительный ID слайда и получить доступ к этому слайду через метод GetSlideById:
// Создание объекта Presentation, представляющего файл презентации
Presentation presentation = new Presentation("AccessSlides.pptx");
// Получение ID слайда
uint id = presentation.Slides[0].SlideId;
// Доступ к слайду через его ID
IBaseSlide slide = presentation.GetSlideById(id);
Изменение позиции слайда
Aspose.Slides позволяет изменять позицию слайда. Например, вы можете указать, что первый слайд должен стать вторым слайдом.
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд (позицию которого вы хотите изменить) через его индекс.
- Установите новую позицию для слайда через свойство SlideNumber.
- Сохраните измененную презентацию.
Этот код на C# демонстрирует операцию, при которой слайд на позиции 1 перемещается на позицию 2:
// Создание объекта Presentation, представляющего файл презентации
using (Presentation pres = new Presentation("ChangePosition.pptx"))
{
// Получение слайда, позицию которого нужно изменить
ISlide sld = pres.Slides[0];
// Установка новой позиции для слайда
sld.SlideNumber = 2;
// Сохранение измененной презентации
pres.Save("Aspose_out.pptx", SaveFormat.Pptx);
}
Первый слайд стал вторым; второй слайд стал первым. Когда вы изменяете позицию слайда, другие слайды автоматически корректируются.
Установка номера слайда
Используя свойство FirstSlideNumber (предоставленное классом Presentation), вы можете указать новый номер для первого слайда в презентации. Эта операция приводит к перерасчету номеров других слайдов.
- Создайте экземпляр класса Presentation.
- Получите номер слайда.
- Установите номер слайда.
- Сохраните измененную презентацию.
Этот код на C# демонстрирует операцию, при которой номер первого слайда устанавливается на 10:
// Создание объекта Presentation, представляющего файл презентации
using (Presentation presentation = new Presentation("HelloWorld.pptx"))
{
// Получение номера слайда
int firstSlideNumber = presentation.FirstSlideNumber;
// Установка номера слайда
presentation.FirstSlideNumber=10;
// Сохранение измененной презентации
presentation.Save("Set_Slide_Number_out.pptx", SaveFormat.Pptx);
}
Если вы хотите пропустить первый слайд, вы можете начать нумерацию со второго слайда (и скрыть нумерацию для первого слайда) таким образом:
using (var presentation = new Presentation())
{
var layoutSlide = presentation.LayoutSlides.GetByType(SlideLayoutType.Blank);
presentation.Slides.AddEmptySlide(layoutSlide);
presentation.Slides.AddEmptySlide(layoutSlide);
presentation.Slides.AddEmptySlide(layoutSlide);
// Установка номера для первого слайда презентации
presentation.FirstSlideNumber = 0;
// Отображение номеров слайдов для всех слайдов
presentation.HeaderFooterManager.SetAllSlideNumbersVisibility(true);
// Скрытие номера слайда для первого слайда
presentation.Slides[0].HeaderFooterManager.SetSlideNumberVisibility(false);
// Сохранение измененной презентации
presentation.Save("output.pptx", SaveFormat.Pptx);
}