با استفاده از C++ ویدیو را در ارائه های پاورپوینت جاسازی کنید

Microsoft PowerPoint این امکان را در اختیار شما قرار می دهد که فریم های ویدئویی را به ارائه های پاورپوینت خود اضافه کنید. از ویدیوها می توان برای افزایش کیفیت ارائه ها و کمک به انتقال بهتر پیام به مخاطب استفاده کرد. ممکن است شرایطی وجود داشته باشد که بخواهید ویدیوها را به صورت برنامه‌نویسی به ارائه‌های پاورپوینت اضافه کنید. برای این منظور، این مقاله به شما آموزش می دهد که چگونه با استفاده از C++ ویدیو را در ارائه های پاورپوینت جاسازی کنید.

C++ API برای جاسازی ویدیو در ارائه های پاورپوینت

ما از Aspose.Slides for C++ API برای جاسازی ویدیوها در ارائه های پاورپوینت استفاده خواهیم کرد. این یک API قدرتمند و غنی است که از ایجاد، خواندن و اصلاح فایل های پاورپوینت بدون نیاز به نصب پاورپوینت Mircosoft پشتیبانی می کند. می‌توانید API را از طریق NuGet نصب کنید یا آن را مستقیماً از بخش دانلودها دانلود کنید.

PM> Install-Package Aspose.Slides.Cpp

با استفاده از C++ ویدیو را در ارائه های پاورپوینت جاسازی کنید

مراحل زیر برای جاسازی یک ویدیو در ارائه پاورپوینت آورده شده است.

کد نمونه زیر نحوه جاسازی یک ویدیو در ارائه پاورپوینت با استفاده از 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);

جاسازی ویدیو از یک منبع وب در ارائه های پاورپوینت

مراحل زیر برای جاسازی یک ویدیو از یک منبع وب در ارائه پاورپوینت آورده شده است.

کد نمونه زیر نحوه جاسازی یک ویدیو از یک منبع وب را در یک ارائه پاورپوینت با استفاده از ++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);

استخراج ویدئو از ارائه های پاورپوینت با استفاده از C++

در زیر مراحل استخراج یک ویدیو از یک ارائه پاورپوینت با استفاده از C++ آمده است.

  • ابتدا فایل پاورپوینت را با استفاده از کلاس Presentation بارگذاری کنید.
  • اسلایدهای ارائه را مرور کنید.
  • شکل ها را در هر اسلاید حلقه بزنید.
  • برای هر شکل، بررسی کنید که آیا شکل VideoFrame است. اگر فریم ویدیویی است، ویدیوی تعبیه شده را استخراج کرده و ذخیره کنید.

کد نمونه زیر نحوه استخراج یک ویدیو از یک ارائه پاورپوینت با استفاده از ++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);

					// پاک کردن منابع تحت عبارت «استفاده»
					//سیستم::جزئیات::DisposeGuard __dispose_guard_0{ جریان، ASPOSE_CURRENT_FUNCTION }؛
					// -----------------------------------------
					stream->Write(buffer, 0, buffer->get_Length());
				}
			}
		}
	}
}

مجوز رایگان دریافت کنید

برای امتحان کردن API بدون محدودیت ارزیابی، می توانید [یک مجوز موقت رایگان] درخواست کنید.

نتیجه

در این مقاله نحوه قرار دادن ویدئوها در ارائه های پاورپوینت با استفاده از C++ را یاد گرفتید. علاوه بر این، نحوه استخراج ویدیوهای جاسازی شده از ارائه های پاورپوینت را با استفاده از Aspose.Slides for C++ API مشاهده کرده اید. این یک API قوی است که بسیاری از ویژگی های اضافی را برای کار با فایل های پاورپوینت فراهم می کند. می‌توانید با مراجعه به مستندات رسمی API را با جزئیات بررسی کنید. در صورت وجود هرگونه سوال، لطفاً با ما در [تالار گفتمان پشتیبانی رایگان17 تماس بگیرید.

همچنین ببینید

نکته: ممکن است بخواهید مبدل Aspose FREE PowerPoint به Video را بررسی کنید زیرا به شما امکان می دهد ارائه های خود را به ویدیوهای خیره کننده با جلوه های انتقال تبدیل کنید.