Могут быть ситуации, когда вам нужно создать копию слайда. Например, вам нужно создать новый слайд, похожий на существующий слайд. В таких случаях вы можете клонировать слайд в той же презентации или другой презентации и изменить его в соответствии с вашими требованиями. С этой целью в этой статье вы узнаете, как клонировать слайды в той же презентации PowerPoint или в другую презентацию PowerPoint с помощью C++.
- C++ API для клонирования слайдов PowerPoint
- Клонирование слайда в презентации PowerPoint
- Клонирование слайда в другую презентацию PowerPoint
C++ API для клонирования слайдов PowerPoint
Aspose.Slides for C++ — это C++ API для работы с презентациями PowerPoint. Он позволяет создавать, читать и изменять файлы PowerPoint без необходимости в дополнительном программном обеспечении. Кроме того, API поддерживает клонирование слайдов PowerPoint. Вы можете либо установить API через NuGet, либо загрузить его напрямую из раздела Загрузки.
Клонирование слайда в презентации PowerPoint
Вы можете клонировать слайд в конец презентации или в определенное место. В следующих разделах мы рассмотрим оба этих сценария с примерами кода.
Клонировать слайд в конец презентации PowerPoint с помощью C++
Ниже приведены шаги для клонирования слайда в конец презентации PowerPoint.
- Загрузите файл PowerPoint с помощью класса Presentation.
- Получите слайды с помощью метода Presentation->getSlides().
- Клонируйте слайд с помощью ISlideCollection->AddClone(System::SharedPtr sourceSlide).
- Сохраните презентацию методом Презентация->Сохранить(System::String fname, Export::SaveFormat format).
В следующем примере кода показано, как клонировать слайд в конец презентации PowerPoint с помощью C++.
// Пути к файлам
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\CloneSlideAtEnd_out.pptx";
// Загрузить презентацию
auto presentation = System::MakeObject<Presentation>(sourceFilePath);
// Получить слайды
auto slides = presentation->get_Slides();
// Добавьте клон слайда
slides->AddClone(presentation->get_Slides()->idx_get(0));
// Сохранить презентацию
presentation->Save(outputFilePath, SaveFormat::Pptx);
Клонировать слайд в определенную позицию с помощью C++
Ниже приведены шаги для клонирования слайда в определенную позицию с помощью C++.
- Загрузите файл PowerPoint с помощью класса Presentation.
- Получите слайды с помощью метода Presentation->getSlides().
- Вставьте клон слайда в нужное место с помощью ISlideCollection->InsertClone(int32t index,System::SharedPtr sourceSlide).
- Сохраните презентацию методом Презентация->Сохранить(System::String fname, Export::SaveFormat format).
В следующем примере кода показано, как клонировать слайд в определенную позицию с помощью C++.
// Пути к файлам
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\CloneSlideAtSpecificIndex_out.pptx";
// Загрузить презентацию
auto presentation = System::MakeObject<Presentation>(sourceFilePath);
// Получить слайды
auto slides = presentation->get_Slides();
// Вставьте клон в индекс 0
slides->InsertClone(0, presentation->get_Slides()->idx_get(1));
// Сохранить презентацию
presentation->Save(outputFilePath, SaveFormat::Pptx);
Клонирование слайда в другую презентацию PowerPoint
Вы можете клонировать слайд в конец или в определенное место другой презентации. В следующих разделах мы рассмотрим оба этих сценария с примерами кода.
Клонировать слайд в конец другой презентации PowerPoint с помощью C++
Ниже приведены шаги для клонирования слайда в конец другой презентации PowerPoint.
- Загрузите исходный файл PowerPoint с помощью класса Presentation.
- Загрузите целевой файл PowerPoint с помощью класса Presentation.
- Получите слайды целевого файла с помощью метода Presentation->getSlides().
- Добавьте клон слайда в целевую презентацию с помощью ISlideCollection->AddClone(System::SharedPtr sourceSlide).
- Сохраните целевую презентацию с помощью метода Презентация->Сохранить(System::String fname, Export::SaveFormat format).
В следующем примере кода показано, как клонировать слайд в конец другой презентации PowerPoint с помощью C++.
// Пути к файлам
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation.pptx";
const String destinationFilePath = u"SourceDirectory\\Slides\\SamplePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneSlideToOtherPresentationAtEnd_out.pptx";
// Загрузите исходную презентацию
auto sourcePresentation = System::MakeObject<Presentation>(sourceFilePath);
// Загрузите целевую презентацию
auto destinationPresentation = System::MakeObject<Presentation>(destinationFilePath);
// Получите слайды целевой презентации
auto destinationSlides = destinationPresentation->get_Slides();
// Добавить слайд из исходной презентации в конец целевой презентации
destinationSlides->AddClone(sourcePresentation->get_Slides()->idx_get(0));
// Сохраните целевую презентацию
destinationPresentation->Save(outputFilePath, SaveFormat::Pptx);
Клонировать слайд в определенную позицию в другой презентации PowerPoint с помощью C++
Ниже приведены шаги для клонирования слайда в определенную позицию в другой презентации PowerPoint.
- Загрузите исходный файл PowerPoint с помощью класса Presentation.
- Загрузите целевой файл PowerPoint с помощью класса Presentation.
- Получите слайды целевого файла с помощью метода Presentation->getSlides().
- Вставьте клон слайда в указанную позицию в целевой презентации, используя ISlideCollection->InsertClone(int32t index,System::SharedPtr sourceSlide).
- Сохраните целевую презентацию, используя метод Презентация->Сохранить(System::String fname, Export::SaveFormat format).
В следующем примере кода показано, как клонировать слайд в определенную позицию в другой презентации PowerPoint с помощью C++.
// Пути к файлам
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation.pptx";
const String destinationFilePath = u"SourceDirectory\\Slides\\SamplePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneSlideToOtherPresentationAtSpecificIndex_out.pptx";
// Загрузите исходную презентацию
auto sourcePresentation = System::MakeObject<Presentation>(sourceFilePath);
// Загрузите целевую презентацию
auto destinationPresentation = System::MakeObject<Presentation>(destinationFilePath);
// Получите слайды целевой презентации
auto destinationSlides = destinationPresentation->get_Slides();
// Вставить слайд из исходной презентации во второй индекс целевой презентации.
destinationSlides->InsertClone(2, sourcePresentation->get_Slides()->idx_get(0));
// Сохраните целевую презентацию
destinationPresentation->Save(outputFilePath, SaveFormat::Pptx);
Получить бесплатную лицензию
Чтобы попробовать API без ограничений на пробную версию, вы можете запросить бесплатную временную лицензию.
Вывод
В этой статье вы узнали, как клонировать слайды в презентациях PowerPoint с помощью C++. В частности, вы узнали, как клонировать слайд в конец или в определенное место той же или другой презентации. Aspose.Slides for C++ — это надежный API, предоставляющий множество дополнительных функций для работы с файлами PowerPoint. Вы можете подробно изучить API, посетив официальную документацию. Если у вас возникнут вопросы, обращайтесь к нам на наш бесплатный форум поддержки.