Converteer PPTX naar video in C#
Krachtige platformonafhankelijke .NET API voor het converteren van PowerPoint naar video met behulp van C#-code op NET Framework-, .NET Core-, Windows Azure-, Mono- of Xamarin-platforms
Converteer PowerPoint naar video met behulp van Aspose.Slides
Aspose.Slides voor .NET is een krachtige .NET-bibliotheek die wordt gebruikt om presentaties te maken, te bewerken en te manipuleren en ook om PowerPoint-presentaties naar andere documenten te converteren en video’s. In dit geval moet u Aspose.Slides gebruiken naast ffmpeg en FFMpegCore (een gratis NET ffmpeg-wrapper) om PowerPoint naar video te converteren.
Dit is hoe het conversieproces van PPTX naar video werkt: Aspose.Slides wordt gebruikt om een set frames te genereren (van de presentatiedia’s) en vervolgens wordt FFMpegCore (ffmpeg) gebruikt om een video te maken op basis van de frames.
Hoe PPTX naar video te converteren
Installeer Aspose.Slides voor .NET en FFMpegcore: Voer
dotnet add package Aspose.Slides.NET --version 22.12.0
uit en voer vervolgensdotnet add package FFMpegCore --version 4.8.0
uitDownload ffmpeg hier.
FFMpegCore vereist dat u het pad specificeert naar de gedownloade ffmpeg (bijv. geëxtraheerd naar “C:\tools\ffmpeg”):
GlobalFFOptions.Configure(new FFOptions { BinaryFolder = @"c:\tools\ffmpeg\bin",} );
Kopieer, plak en voer vervolgens de PowerPoint-naar-videocode uit.
Converteer PowerPoint naar video in C#
Gebruik deze code om PPTX naar video te converteren:
C#-code voor het converteren van PowerPoint naar video
using System.Collections.Generic;
using Aspose.Slides;
using FFMpegCore; // Will use FFmpeg binaries we extracted to "c:\tools\ffmpeg" before
using Aspose.Slides.Animation;
using (Presentation presentation = new Presentation())
{
// Adds a smile shape and then animates it
IAutoShape smile = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.SmileyFace, 110, 20, 500, 500);
IEffect effectIn = presentation.Slides[0].Timeline.MainSequence.AddEffect(smile, EffectType.Fly, EffectSubtype.TopLeft, EffectTriggerType.AfterPrevious);
IEffect effectOut = presentation.Slides[0].Timeline.MainSequence.AddEffect(smile, EffectType.Fly, EffectSubtype.BottomRight, EffectTriggerType.AfterPrevious);
effectIn.Timing.Duration = 2f;
effectOut.PresetClassType = EffectPresetClassType.Exit;
const int Fps = 33;
List<string> frames = new List<string>();
using (var animationsGenerator = new PresentationAnimationsGenerator(presentation))
using (var player = new PresentationPlayer(animationsGenerator, Fps))
{
player.FrameTick += (sender, args) =>
{
string frame = $"frame_{(sender.FrameIndex):D4}.png";
args.GetFrame().Save(frame);
frames.Add(frame);
};
animationsGenerator.Run(presentation.Slides);
}
// Configure ffmpeg binaries folder. See this page: https://github.com/rosenbjerg/FFMpegCore#installation
GlobalFFOptions.Configure(new FFOptions { BinaryFolder = @"c:\tools\ffmpeg\bin", });
// Converts frames to webm video
FFMpeg.JoinImageSequence("smile.webm", Fps, frames.Select(frame => ImageInfo.FromPath(frame)).ToArray());
}
Andere ondersteunde conversies
U kunt PowerPoint ook converteren naar bestanden in andere formaten