Microsoft PowerPoint, PowerPoint sunumlarınıza video kareleri eklemenizi sağlar. Sunumların kalitesini artırmak ve mesajın izleyicilere daha iyi iletilmesine yardımcı olmak için videolar kullanılabilir. PowerPoint sunumlarına programlı olarak video eklemek istediğiniz durumlar olabilir. Bu amaçla, bu makale size C++ kullanarak PowerPoint sunumlarına nasıl video ekleyeceğinizi öğretecektir.
- PowerPoint Sunumlarına Video Gömmek için C++ API
- C++ kullanarak PowerPoint Sunumlarına Video Gömme
- Bir Web Kaynağından PowerPoint Sunumlarına Video Gömme
- C++ kullanarak PowerPoint Sunumlarından Video Çıkarın
PowerPoint Sunumlarına Video Gömmek için C++ API
Videoları PowerPoint sunumlarına gömmek için Aspose.Slides for C++ API’sini kullanacağız. Mircosoft PowerPoint’in yüklenmesine gerek kalmadan PowerPoint dosyalarının oluşturulmasını, okunmasını ve değiştirilmesini destekleyen güçlü ve zengin özelliklere sahip bir API’dir. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan İndirilenler bölümünden indirebilirsiniz.
PM> Install-Package Aspose.Slides.Cpp
C++ kullanarak PowerPoint Sunumlarına Video Gömme
Aşağıda, bir videoyu bir PowerPoint sunumuna katıştırmak için gereken adımlar verilmiştir.
- İlk olarak, yeni bir PowerPoint dosyasını temsil edecek Sunum sınıfının bir örneğini oluşturun.
- Videoyu gömmek istediğiniz slaytı alın.
- Sunum->getVideos()->Video Ekle (System::SharedPtr) kullanarak videoyu sunuma ekleyin.System::IO::Stream akış) yöntemi.
- ISlide->getShapes()->AddVideoFrame(float x, float y, float width, float height, System::SharedPtr< IVideo > video) yöntemini kullanarak video karesini ekleyin.
- Videoyu video çerçevesinin içine IVideoFrame->setEmbeddedVideo(System::SharedPtr) kullanarak gömün değer) yöntemi.
- Videonun oynatma modunu ve sesini ayarlayın.
- Son olarak, sunumu Presentation->Save(System::String fname, Export::SaveFormat format) yöntemini kullanarak kaydedin.
Aşağıdaki örnek kod, bir videoyu C++ kullanarak bir PowerPoint sunumuna nasıl katıştıracağınızı gösterir.
// dosya yolları
const String videoFilePath = u"SourceDirectory\\Video\\Wildlife.mp4";
const String outputFilePath = u"OutputDirectory\\EmbedVideo_out.pptx";
// Presentation sınıfının bir örneğini oluşturun
SharedPtr<Presentation> presentation = MakeObject<Presentation>();
// İlk slayda erişin
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Akış için video dosyasını yükleyin
System::SharedPtr<System::IO::Stream> stream = System::MakeObject<System::IO::FileStream>(videoFilePath, System::IO::FileMode::Open, System::IO::FileAccess::Read);
// Videoyu sunuma ekleyin
System::SharedPtr<IVideo> vid = presentation->get_Videos()->AddVideo(stream);
// Video çerçevesi ekle
System::SharedPtr<IVideoFrame> videoFrame = slide->get_Shapes()->AddVideoFrame(50, 150, 300, 150, vid);
// Video çerçevesinin içine video gömün
videoFrame->set_EmbeddedVideo(vid);
// Videonun oynatma modunu ve sesini ayarlayın
videoFrame->set_PlayMode(VideoPlayModePreset::Auto);
videoFrame->set_Volume(AudioVolumeMode::Loud);
// sunuyu kaydet
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Bir Web Kaynağından PowerPoint Sunumlarına Video Gömme
Aşağıdakiler, bir web kaynağından bir videoyu bir PowerPoint sunumuna katıştırmak için gereken adımlardır.
- İlk olarak, yeni bir PowerPoint dosyasını temsil edecek Sunum sınıfının bir örneğini oluşturun.
- Videoyu gömmek istediğiniz slaytı alın.
- ISlide->getShapes()->AddVideoFrame(float x, float y, float width, float height, System::String fname) yöntemini kullanarak bir video karesi ekleyin.
- Videonun oynatma modunu ayarlayın.
- Son olarak, sunumu Presentation->Save(System::String fname, Export::SaveFormat format) yöntemini kullanarak kaydedin.
Aşağıdaki örnek kod, bir web kaynağından bir videoyu C++ kullanarak bir PowerPoint sunumuna nasıl katıştıracağınızı gösterir.
// Dosya yolu
const String outputFilePath = u"OutputDirectory\\EmbedVideoFromWeb_out.pptx";
// Presentation sınıfının bir örneğini oluşturun
SharedPtr<Presentation> presentation = MakeObject<Presentation>();
// İlk slayda erişin
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Web kaynağından video karesi ekleyin
System::SharedPtr<IVideoFrame> videoFrame = slide->get_Shapes()->AddVideoFrame(10, 10, 427, 240, u"https://www.youtube.com/embed/sZJorZmHiIk");
// Videonun oynatma modunu ve sesini ayarlayın
videoFrame->set_PlayMode(VideoPlayModePreset::Auto);
// sunuyu kaydet
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
C++ kullanarak PowerPoint Sunumlarından Video Çıkarın
Aşağıdakiler, C++ kullanarak bir PowerPoint sunumundan video ayıklama adımlarıdır.
- İlk olarak, Sunum sınıfını kullanarak PowerPoint dosyasını yükleyin.
- Sunumun slaytları arasında geçiş yapın.
- Her slayttaki şekiller arasında geçiş yapın.
- Her şekil için şeklin bir VideoFrame olup olmadığını kontrol edin. Bir video karesi olması durumunda, gömülü videoyu çıkarın ve kaydedin.
Aşağıdaki örnek kod, C++ kullanılarak bir PowerPoint sunumundan videonun nasıl çıkarılacağını gösterir.
// dosya yolları
const String sourceFilePath = u"OutputDirectory\\EmbedVideo_out.pptx";
const String outputFilePath = u"OutputDirectory\\ExtractVideoFromSlide_out.";
// Sunum dosyasını yükleyin
System::SharedPtr<Presentation> presentation = System::MakeObject<Presentation>(sourceFilePath);
{
// Slaytlar arasında geçiş yapın
auto slide_enumerator = (presentation->get_Slides())->GetEnumerator();
decltype(slide_enumerator->get_Current()) slide;
while (slide_enumerator->MoveNext() && (slide = slide_enumerator->get_Current(), true))
{
// Şekiller arasında döngü
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))
{
// Şeklin bir video karesi olup olmadığını kontrol edin
if (System::ObjectExt::Is<VideoFrame>(shape))
{
// Video dosyasını ayıklayın
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);
// Kaynakları 'kullanma' ifadesi altında temizleme
//System::Details::DisposeGuard __dispose_guard_0{ akış, ASPOSE_CURRENT_FUNCTION };
// ------------------------------------------
stream->Write(buffer, 0, buffer->get_Length());
}
}
}
}
}
Ücretsiz Lisans Alın
API’yi değerlendirme kısıtlamaları olmadan denemek için [ücretsiz bir geçici lisans] talep edebilirsiniz15.
Çözüm
Bu makalede, videoları C++ kullanarak PowerPoint sunumlarına nasıl yerleştireceğinizi öğrendiniz. Ayrıca, Aspose.Slides for C++ API kullanarak PowerPoint sunumlarından gömülü videoları nasıl çıkaracağınızı gördünüz. PowerPoint dosyalarıyla çalışmak için birçok ek özellik sağlayan güçlü bir API’dir. Resmi belgeleri ziyaret ederek API’yi ayrıntılı olarak inceleyebilirsiniz. Herhangi bir sorunuz olması durumunda lütfen ücretsiz destek forumumuzdan bize ulaşmaktan çekinmeyin.
Ayrıca bakınız
- C++ kullanarak PowerPoint Sunumlarında Slayt Geçişleri Ekleme
- C++ kullanarak PowerPoint Sunumlarında Slayt Arka Planını Ayarlama
İpucu: Aspose FREE PowerPoint to Video dönüştürücüyü kontrol etmek isteyebilirsiniz, çünkü sunumlarınızı geçiş efektleriyle çarpıcı videolara dönüştürmenize olanak tanır.