Microsoft PowerPoint надає вам можливість додавати відеокадри до ваших презентацій PowerPoint. Відео можна використовувати, щоб підвищити якість презентацій і допомогти краще донести повідомлення до аудиторії. Можуть виникнути ситуації, коли потрібно програмно додати відео до презентацій PowerPoint. З цією метою ця стаття навчить вас, як вставляти відео в презентації PowerPoint за допомогою C++.
- C++ API для вбудовування відео в презентації PowerPoint
- Вбудовуйте відео в презентації PowerPoint за допомогою C++
- Вбудовування відео з веб-джерела в презентації PowerPoint
- Видобувайте відео з презентацій PowerPoint за допомогою C++
C++ API для вбудовування відео в презентації PowerPoint
Ми будемо використовувати API Aspose.Slides for C++ для вставлення відео в презентації PowerPoint. Це потужний і багатофункціональний API, який підтримує створення, читання та змінення файлів PowerPoint без встановлення Mircosoft PowerPoint. Ви можете встановити API через NuGet або завантажити його безпосередньо з розділу Завантаження.
PM> Install-Package Aspose.Slides.Cpp
Вбудовуйте відео в презентації PowerPoint за допомогою C++
Нижче наведено кроки, щоб вставити відео в презентацію PowerPoint.
- По-перше, створіть екземпляр класу Presentation для представлення нового файлу PowerPoint.
- Отримайте слайд, куди потрібно вставити відео.
- Додайте відео до презентації за допомогою Presentation->getVideos()->AddVideo (System::SharedPtrSystem::IO::Stream потік) метод.
- Додайте відеокадр за допомогою методу ISlide->getShapes()->AddVideoFrame(float x, float y, float width, float height, System::SharedPtr< IVideo > video).
- Вставте відео у відеокадр за допомогою IVideoFrame->setEmbeddedVideo(System::SharedPtr) значення) метод.
- Встановіть режим відтворення та гучність відео.
- Нарешті, збережіть презентацію за допомогою методу Presentation->Save(System::String fname, Export::SaveFormat format).
У наведеному нижче прикладі коду показано, як вставити відео в презентацію PowerPoint за допомогою C++.
// Шляхи до файлів
const String videoFilePath = u"SourceDirectory\\Video\\Wildlife.mp4";
const String outputFilePath = u"OutputDirectory\\EmbedVideo_out.pptx";
// Створіть екземпляр класу Presentation
SharedPtr<Presentation> presentation = MakeObject<Presentation>();
// Доступ до першого слайда
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Завантажте відеофайл для потокової передачі
System::SharedPtr<System::IO::Stream> stream = System::MakeObject<System::IO::FileStream>(videoFilePath, System::IO::FileMode::Open, System::IO::FileAccess::Read);
// Додайте відео до презентації
System::SharedPtr<IVideo> vid = presentation->get_Videos()->AddVideo(stream);
// Додайте кадр відео
System::SharedPtr<IVideoFrame> videoFrame = slide->get_Shapes()->AddVideoFrame(50, 150, 300, 150, vid);
// Вставити відео в кадр відео
videoFrame->set_EmbeddedVideo(vid);
// Встановіть режим відтворення та гучність відео
videoFrame->set_PlayMode(VideoPlayModePreset::Auto);
videoFrame->set_Volume(AudioVolumeMode::Loud);
// Зберегти презентацію
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Вбудовування відео з веб-джерела в презентації PowerPoint
Нижче наведено кроки, щоб вставити відео з веб-джерела в презентацію PowerPoint.
- По-перше, створіть екземпляр класу Presentation для представлення нового файлу PowerPoint.
- Отримайте слайд, куди потрібно вставити відео.
- Додайте відеокадр за допомогою методу ISlide->getShapes()->AddVideoFrame(float x, float y, float width, float height, System::String fname).
- Встановіть режим відтворення відео.
- Зрештою, збережіть презентацію за допомогою методу Presentation->Save(System::String fname, Export::SaveFormat format).
У наведеному нижче прикладі коду показано, як вставити відео з веб-джерела в презентацію PowerPoint за допомогою C++.
// Шлях до файлу
const String outputFilePath = u"OutputDirectory\\EmbedVideoFromWeb_out.pptx";
// Створіть екземпляр класу Presentation
SharedPtr<Presentation> presentation = MakeObject<Presentation>();
// Доступ до першого слайда
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Додайте кадр відео з веб-джерела
System::SharedPtr<IVideoFrame> videoFrame = slide->get_Shapes()->AddVideoFrame(10, 10, 427, 240, u"https://www.youtube.com/embed/sZJorZmHiIk");
// Встановіть режим відтворення та гучність відео
videoFrame->set_PlayMode(VideoPlayModePreset::Auto);
// Зберегти презентацію
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Видобувайте відео з презентацій PowerPoint за допомогою C++
Нижче наведено кроки, щоб витягти відео з презентації PowerPoint за допомогою C++.
- По-перше, завантажте файл PowerPoint за допомогою класу Presentation.
- Переглядайте слайди презентації.
- Перегляньте фігури на кожному слайді.
- Для кожної фігури перевірте, чи є вона VideoFrame. Якщо це відеокадр, розпакуйте вбудоване відео та збережіть його.
У наведеному нижче прикладі коду показано, як витягти відео з презентації PowerPoint за допомогою C++.
// Шляхи до файлів
const String sourceFilePath = u"OutputDirectory\\EmbedVideo_out.pptx";
const String outputFilePath = u"OutputDirectory\\ExtractVideoFromSlide_out.";
// Завантажте файл презентації
System::SharedPtr<Presentation> presentation = System::MakeObject<Presentation>(sourceFilePath);
{
// Перегляньте слайди
auto slide_enumerator = (presentation->get_Slides())->GetEnumerator();
decltype(slide_enumerator->get_Current()) slide;
while (slide_enumerator->MoveNext() && (slide = slide_enumerator->get_Current(), true))
{
// Перебирайте фігури
auto shape_enumerator = (presentation->get_Slides()->idx_get(0)->get_Shapes())->GetEnumerator();
decltype(shape_enumerator->get_Current()) shape;
while (shape_enumerator->MoveNext() && (shape = shape_enumerator->get_Current(), true))
{
// Перевірте, чи фігура є відеокадром
if (System::ObjectExt::Is<VideoFrame>(shape))
{
// Розпакуйте відеофайл
System::SharedPtr<VideoFrame> vf = System::DynamicCast_noexcept<Aspose::Slides::VideoFrame>(shape);
System::String type = vf->get_EmbeddedVideo()->get_ContentType();
int32_t ss = type.LastIndexOf(L'/');
type = type.Remove(0, type.LastIndexOf(L'/') + 1);
System::ArrayPtr<uint8_t> buffer = vf->get_EmbeddedVideo()->get_BinaryData();
{
System::SharedPtr<System::IO::FileStream> stream = System::MakeObject<System::IO::FileStream>(outputFilePath + type, System::IO::FileMode::Create, System::IO::FileAccess::Write, System::IO::FileShare::Read);
// Очищення ресурсів під оператором «використання».
//System::Details::DisposeGuard __dispose_guard_0{ потік, ASPOSE_CURRENT_FUNCTION };
// ----------------------------------------------
stream->Write(buffer, 0, buffer->get_Length());
}
}
}
}
}
Отримайте безкоштовну ліцензію
Щоб випробувати API без оціночних обмежень, ви можете подати запит на безкоштовну тимчасову ліцензію.
Висновок
У цій статті ви дізналися, як вставляти відео в презентації PowerPoint за допомогою C++. Крім того, ви бачили, як видобувати вбудовані відео з презентацій PowerPoint за допомогою API Aspose.Slides for C++. Це надійний API, який надає багато додаткових функцій для роботи з файлами PowerPoint. Ви можете детально вивчити API, відвідавши офіційну документацію. У разі будь-яких запитань зв’яжіться з нами на нашому безкоштовному форумі підтримки.
Дивись також
- Додайте переходи між слайдами в презентаціях PowerPoint за допомогою C++
- Встановіть фон слайда в презентаціях PowerPoint за допомогою C++
Порада. Ви можете скористатися БЕЗКОШТОВНИМ конвертером Aspose PowerPoint to Video, оскільки він дозволяє перетворювати ваші презентації на приголомшливі відео з ефектами переходу.