تحويل PowerPoint إلى فيديو
من خلال تحويل عرض PowerPoint الخاص بك إلى فيديو، ستحصل على
- زيادة في الوصول: جميع الأجهزة (بغض النظر عن النظام) مزودة بلاعب فيديو بشكل افتراضي مقارنة بتطبيقات فتح العروض التقديمية، لذا يجد المستخدمون أنه من الأسهل فتح أو تشغيل الفيديوهات.
- وصول أكبر: من خلال الفيديوهات، يمكنك الوصول إلى جمهور كبير واستهدافهم بمعلومات قد تبدو مملة في عرض تقديمي. تشير معظم الاستطلاعات والإحصائيات إلى أن الناس يشاهدون ويستهلكون الفيديوهات أكثر من أشكال المحتوى الأخرى، ويفضلون عمومًا مثل هذا المحتوى.
تحويل PowerPoint إلى فيديو في Aspose.Slides
في Aspose.Slides 24.4، قمنا بتنفيذ دعم تحويل العروض التقديمية إلى فيديو.
- استخدم Aspose.Slides لإنشاء مجموعة من الإطارات (من شرائح العرض التقديمي) التي تتوافق مع FPS معينة (الإطارات في الثانية)
- استخدم أداة خارجية مثل ffmpeg لإنشاء فيديو بناءً على الإطارات.
تحويل PowerPoint إلى فيديو
- استخدم أمر تثبيت pip لإضافة Aspose.Slides إلى مشروعك:
- قم بتشغيل
pip install Aspose.Slides==24.4.0
- قم بتشغيل
- قم بتنزيل ffmpeg هنا أو قم بتثبيته عبر مدير الحزم.
- تأكد من أن ffmpeg موجود في
PATH
، وإلا قم بتشغيل ffmpeg باستخدام المسار الكامل للثنائي (مثلC:\ffmpeg\ffmpeg.exe
على Windows أو/opt/ffmpeg/ffmpeg
على Linux) - قم بتشغيل الكود الخاص بتحويل PowerPoint إلى فيديو.
يوضح هذا الكود بلغة Python كيفية تحويل عرض تقديمي (يحتوي على شكل ومؤثرين حركيين) إلى فيديو:
import aspose.slides as slides
import subprocess
with slides.Presentation() as presentation:
smile = presentation.slides[0].shapes.add_auto_shape(slides.ShapeType.SMILEY_FACE, 110, 20, 500, 500)
effect_in = presentation.slides[0].timeline.main_sequence.add_effect(smile, slides.animation.EffectType.FLY, slides.animation.EffectSubtype.TOP_LEFT, slides.animation.EffectTriggerType.AFTER_PREVIOUS)
effect_out = presentation.slides[0].timeline.main_sequence.add_effect(smile, slides.animation.EffectType.FLY, slides.animation.EffectSubtype.BOTTOM_RIGHT, slides.animation.EffectTriggerType.AFTER_PREVIOUS)
effect_in.timing.duration = 2
effect_out.preset_class_type = slides.animation.EffectPresetClassType.EXIT
fps = 33
with slides.export.PresentationEnumerableFramesGenerator(presentation, fps) as frames_stream:
for frame_args in frames_stream.enumerate_frames(presentation.slides):
frame = "frame_{:04d}.png".format(frame_args.frames_generator.frame_index)
frame_args.get_frame().save(frame)
cmd_line = ["ffmpeg", "-r", str(fps), "-i", "frame_%04d.png", "-y", "-s", "720x540", "-pix_fmt", "yuv420p", "smile.webm"]
subprocess.call(cmd_line)
مؤثرات الفيديو
يمكنك تطبيق حركات على العناصر في الشرائح واستخدام انتقالات بين الشرائح.
تجعل الرسوم المتحركة والانتقالات العروض التقديمية أكثر جاذبية وإثارة — وتفعل الشيء نفسه للفيديوهات. دعونا نضيف شريحة أخرى وانتقال إلى الكود الخاص بالعرض التقديمي السابق:
import aspose.pydrawing as drawing
# إضافة شكل مبتسم وتحريكه
# ...
# إضافة شريحة جديدة وانتقال متحرك
new_slide = presentation.slides.add_empty_slide(presentation.slides[0].layout_slide)
new_slide.background.type = slides.BackgroundType.OWN_BACKGROUND
new_slide.background.fill_format.fill_type = slides.FillType.SOLID
new_slide.background.fill_format.solid_fill_color.color = drawing.Color.indigo
new_slide.slide_show_transition.type = slides.TransitionType.PUSH
يدعم Aspose.Slides أيضًا الرسوم المتحركة للنصوص. لذا قمنا بتحريك الفقرات على العناصر، التي ستظهر واحدة تلو الأخرى (مع تأخير محدد بساعة):
import aspose.slides as slides
import subprocess
with slides.Presentation() as presentation:
# إضافة نصوص ورسوم متحركة
auto_shape = presentation.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 210, 120, 300, 300)
para1 = slides.Paragraph()
para1.portions.add(slides.Portion("Aspose Slides for .NET"))
para2 = slides.Paragraph()
para2.portions.add(slides.Portion("تحويل عرض PowerPoint مع نص إلى فيديو"))
para3 = slides.Paragraph()
para3.portions.add(slides.Portion("فقرة تلو الأخرى"))
auto_shape.text_frame.paragraphs.add(para1)
auto_shape.text_frame.paragraphs.add(para2)
auto_shape.text_frame.paragraphs.add(para3)
auto_shape.text_frame.paragraphs.add(slides.Paragraph())
effect = presentation.slides[0].timeline.main_sequence.add_effect(para1, slides.animation.EffectType.APPEAR, slides.animation.EffectSubtype.NONE, slides.animation.EffectTriggerType.AFTER_PREVIOUS)
effect2 = presentation.slides[0].timeline.main_sequence.add_effect(para2, slides.animation.EffectType.APPEAR, slides.animation.EffectSubtype.NONE, slides.animation.EffectTriggerType.AFTER_PREVIOUS)
effect3 = presentation.slides[0].timeline.main_sequence.add_effect(para3, slides.animation.EffectType.APPEAR, slides.animation.EffectSubtype.NONE, slides.animation.EffectTriggerType.AFTER_PREVIOUS)
effect4 = presentation.slides[0].timeline.main_sequence.add_effect(para3, slides.animation.EffectType.APPEAR, slides.animation.EffectSubtype.NONE, slides.animation.EffectTriggerType.AFTER_PREVIOUS)
effect.timing.trigger_delay_time = 1
effect2.timing.trigger_delay_time = 1
effect3.timing.trigger_delay_time = 1
effect4.timing.trigger_delay_time = 1
# تحويل الإطارات إلى فيديو
fps = 33
with slides.export.PresentationEnumerableFramesGenerator(presentation, fps) as frames_stream:
for frame_args in frames_stream.enumerate_frames(presentation.slides):
frame = "frame_{:04d}.png".format(frame_args.frames_generator.frame_index)
frame_args.get_frame().save(frame)
cmd_line = ["ffmpeg", "-r", str(fps), "-i", "frame_%04d.png", "-y", "-s", "720x540", "-pix_fmt", "yuv420p", "text_animation.webm"]
subprocess.call(cmd_line)
فئات تحويل الفيديو
لتتمكن من تنفيذ مهام تحويل PowerPoint إلى فيديو، يوفر Aspose.Slides PresentationEnumerableAnimationsGenerator.
يتيح لك PresentationEnumerableAnimationsGenerator تحديد حجم الإطار الخاص بالفيديو (الذي سيتم إنشاؤه لاحقًا) وقيمة FPS (الإطارات في الثانية) من خلال منشئه. إذا قمت بتمرير مثيل العرض التقديمي، سيتم استخدام Presentation.SlideSize
.
لجعل جميع الرسوم المتحركة في العرض التقديمي تعمل دفعة واحدة، استخدم طريقة PresentationEnumerableAnimationsGenerator.enumerate_frames. تأخذ هذه الطريقة مجموعة من الشرائح وتسمح بالحصول بشكل تسلسلي على EnumerableFrameArgs. ثم، يسمح لك EnumerableFrameArgs.get_frame() بالحصول على إطار الفيديو:
import aspose.slides as slides
with slides.Presentation("animated.pptx") as presentation:
fps = 33
with slides.export.PresentationEnumerableFramesGenerator(presentation, fps) as frames_stream:
for frame_args in frames_stream.enumerate_frames(presentation.slides):
frame_args.get_frame().save(f"frame_{frame_args.frames_generator.frame_index:04d}.png")
ثم يمكن تجميع الإطارات الناتجة لإنتاج فيديو. انظر إلى قسم تحويل PowerPoint إلى فيديو.
الرسوم المتحركة المدعومة والتأثيرات
دخول:
نوع الرسوم المتحركة | Aspose.Slides | PowerPoint |
---|---|---|
ظهور | ||
تلاشي | ||
التحليق في | ||
طفو في | ||
انقسام | ||
مسح | ||
شكل | ||
عجلة | ||
أشرطة عشوائية | ||
نمو ولف | ||
تكبير | ||
دوارن | ||
ارتداد |
تركيز:
نوع الرسوم المتحركة | Aspose.Slides | PowerPoint |
---|---|---|
نبض | ||
نبض لون | ||
تأرجح | ||
دوران | ||
نمو/تصغير | ||
تخفيف | ||
تعتيم | ||
إضاءة | ||
شفافية | ||
لون العنصر | ||
لون مكمل | ||
لون خط | ||
لون ملء |
خروج:
نوع الرسوم المتحركة | Aspose.Slides | PowerPoint |
---|---|---|
اختفاء | ||
تلاشي | ||
التحليق خارجًا | ||
طفو خارجًا | ||
انقسام | ||
مسح | ||
شكل | ||
أشرطة عشوائية | ||
تصغير وتحويل | ||
تكبير | ||
دوارن | ||
ارتداد |
مسارات الحركة:
نوع الرسوم المتحركة | Aspose.Slides | PowerPoint |
---|---|---|
خطوط | ||
أقواس | ||
تحولات | ||
أشكال | ||
دوارات | ||
مسار مخصص |
تأثيرات الانتقال للشرائح المدعومة
خفيفة:
نوع الرسوم المتحركة | Aspose.Slides | PowerPoint |
---|---|---|
تحول | ||
تلاشي | ||
دفع | ||
سحب | ||
مسح | ||
انقسام | ||
كشف | ||
أشرطة عشوائية | ||
شكل | ||
كشف | ||
غطاء | ||
ومضات | ||
شرائط |
مليئة بالإثارة:
نوع الرسوم المتحركة | Aspose.Slides | PowerPoint |
---|---|---|
سقوط فوق | ||
تغطية | ||
ستائر | ||
ريح | ||
هيبة | ||
تحطيم | ||
دمر | ||
قش | ||
التفاف الصفحة | ||
طائرة | ||
أوريغامي | ||
ذوبان | ||
تشكيلة | ||
ستائر | ||
ساعة | ||
تموج | ||
شباك العسل | ||
تألق | ||
دوامة | ||
تمزق | ||
تبديل | ||
قلب | ||
صالة عرض | ||
مكعب | ||
أبواب | ||
صندوق | ||
مشط | ||
تكبير | ||
عشوائي |
محتوى ديناميكي:
نوع الرسوم المتحركة | Aspose.Slides | PowerPoint |
---|---|---|
بان | ||
عجلة فيريس | ||
حزام ناقل | ||
تدوير | ||
مدار | ||
التحليق |