Объединение презентаций PowerPoint может быть полезно в различных сценариях, таких как объединение содержимого из нескольких PPT/PPTX, объединение частей одной презентации, созданной двумя или более людьми, и т. д. Ручной способ копирования/вставки содержимого может не подходить при работе с с рядом презентаций. Таким образом, эта статья позволяет разработчикам .NET узнать, как программно объединять презентации PowerPoint с помощью C#.
- API слияния .NET PowerPoint
- Объединение презентаций PowerPoint с помощью C#
- Объединение отдельных слайдов презентаций PowerPoint с помощью C#
- Используйте образец слайдов при объединении презентаций PowerPoint
API слияния .NET PowerPoint
Aspose.Slides for .NET — это многофункциональный .NET PowerPoint API, который позволяет создавать документы презентаций и управлять ими. Наряду с этим он позволяет объединять две или более презентаций PowerPoint с использованием C# или VB.NET. Вы можете скачать библиотеку DLL API или установить ее с помощью NuGet.
Объединение презентаций PowerPoint с помощью C#
В этом разделе вы узнаете, как клонировать и объединять все слайды из одной презентации PowerPoint в другую. Для этого вы можете просто клонировать слайды из исходной презентации и добавить их в конец целевой презентации. Ниже приведены шаги для объединения двух презентаций.
- Создайте объект класса Presentation для загрузки целевого файла презентации.
- Создайте еще один объект Презентация для загрузки исходной презентации, из которой вы будете клонировать слайды.
- Получите доступ к коллекции слайдов из исходной презентации с помощью свойства Presentation.Slides.
- Прокрутите коллекцию слайдов и объедините их в целевую презентацию, используя метод Presentation.Slides.AddClone(ISlide).
- Сохраните объединенную презентацию с помощью метода Presentation.Save(String, SaveFormat).
В следующем примере кода показано, как объединить две презентации PowerPoint с помощью C#.
// Создание экземпляра объекта Presentation, представляющего целевой файл презентации
using (Presentation presentation1 = new Presentation("presentation1.pptx"))
{
// Создание экземпляра объекта Presentation, представляющего исходный файл презентации
using (Presentation presentation2 = new Presentation("presentation2.pptx"))
{
foreach (ISlide slide in presentation2.Slides)
{
// Объединение слайдов из источника в цель
presentation1.Slides.AddClone(slide);
}
}
// Сохранить презентацию
presentation1.Save("merged-presentation.pptx", Export.SaveFormat.Pptx);
}
Целевая презентация
Презентация источника
Объединенная презентация
Объединение отдельных слайдов презентаций PowerPoint с помощью C#
В предыдущем примере вы объединили все слайды из исходного файла PPTX в целевой PPTX. Однако может быть случай, когда вам нужно объединить только выбранные слайды. В таком случае вы можете указать слайды, которые нужно объединить, используя индекс слайда. Ниже приведены шаги для выполнения этой операции.
- Загрузите целевую презентацию с помощью класса Presentation.
- Загрузите исходную презентацию с помощью класса Presentation.
- Клонируйте нужные слайды, используя метод Presentation1.Slides.AddClone(presentation2.Slides[int Index]).
- Сохраните объединенную презентацию как новый файл PPTX.
В следующем примере кода показано, как объединить отдельные слайды презентаций с помощью C#.
// Создание экземпляра объекта Presentation, представляющего целевой файл презентации
using (Presentation presentation1 = new Presentation("presentation1.pptx"))
{
// Создание экземпляра объекта Presentation, представляющего исходный файл презентации
using (Presentation presentation2 = new Presentation("presentation2.pptx"))
{
// Объединить только четные слайды презентации2 (первый слайд имеет индекс 0)
for (int i = 1; i <= presentation2.Slides.Count; i = i + 2)
{
presentation1.Slides.AddClone(presentation2.Slides[i]);
}
}
presentation1.Save("merged-presentation-even.pptx", Export.SaveFormat.Pptx);
}
Объединенная презентация
Используйте образец слайдов при объединении презентаций PowerPoint
В обоих предыдущих примерах вы объединили слайды, сохранив дизайн и шаблон исходной презентации. Однако в некоторых случаях может потребоваться изменить макет слайдов в соответствии с целевой презентацией. В таких случаях можно использовать перегруженный метод [presentation1.Slides.AddClone(presentation2.Slides1, Presentation1.Masters[0], true)]12.
В следующем примере кода показано, как объединить слайды в презентации PowerPoint с помощью образца слайдов в C#.
// Создание экземпляра объекта Presentation, представляющего целевой файл презентации
using (Presentation presentation1 = new Presentation("presentation1.pptx"))
{
// Создание экземпляра объекта Presentation, представляющего исходный файл презентации
using (Presentation presentation2 = new Presentation("presentation2.pptx"))
{
// Объединить первые два слайда только с помощью образца слайдов
presentation1.Slides.AddClone(presentation2.Slides[0], presentation1.Masters[0], true);
presentation1.Slides.AddClone(presentation2.Slides[1], presentation1.Masters[0], true);
}
presentation1.Save("merged-presentation-master.pptx", Export.SaveFormat.Pptx);
}
Объединенная презентация
Вывод
В этой статье вы узнали, как объединить две или несколько презентаций PowerPoint с помощью C#. Вы можете перенести образцы кода C#, чтобы объединить презентации с помощью VB.NET. Если вы хотите узнать больше о Aspose .NET PowerPoint API, вы можете посетить документацию.
Смотрите также
Совет: возможно, вам будет интересно попробовать приложение для веб-просмотра презентаций, разработанное с помощью API-интерфейсов Aspose.