Konversikan PPTX ke video di Java
API Java lintas platform yang kuat untuk mengonversi PowerPoint ke video menggunakan kode Java
Konversikan PowerPoint ke video menggunakan Aspose.Slides
Aspose.Slides for Java adalah pustaka Java canggih yang digunakan untuk membuat, mengedit, dan memanipulasi presentasi serta mengonversi presentasi PowerPoint ke dokumen dan video lain . Dalam hal ini, untuk mengonversi PowerPoint ke video, Anda perlu menggunakan Aspose.Slides bersama ffmpeg.
Beginilah cara kerja proses konversi PPTX ke video: Aspose.Slides digunakan untuk menghasilkan serangkaian bingkai (dari slide presentasi) dan kemudian FFMpegCore (ffmpeg) digunakan untuk membuat video berdasarkan bingkai tersebut.
Bagaimana mengkonversi PPTX ke video
Instal Aspose.Slides untuk Java dengan mengikuti petunjuk di sini . Unduh ffmpeg di sini.
Tambahkan ini ke file POM Anda:
<ketergantungan> <groupId>net.bramp.ffmpeg</groupId> <artifactId>ffmpeg</artifactId> <versi>0.7.0</versi> </ketergantungan>
Salin, tempel, lalu jalankan Java PowerPoint ke kode video.
Ubah PowerPoint menjadi video di Java
Gunakan kode Java ini untuk mengonversi PPTX ke video:
Kode Java untuk mengonversi PowerPoint ke video
Presentation presentation = new Presentation();
try {
// Adds a smile shape and then animates it
IAutoShape smile = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.SmileyFace, 110, 20, 500, 500);
ISequence mainSequence = presentation.getSlides().get_Item(0).getTimeline().getMainSequence();
IEffect effectIn = mainSequence.addEffect(smile, EffectType.Fly, EffectSubtype.TopLeft, EffectTriggerType.AfterPrevious);
IEffect effectOut = mainSequence.addEffect(smile, EffectType.Fly, EffectSubtype.BottomRight, EffectTriggerType.AfterPrevious);
effectIn.getTiming().setDuration(2f);
effectOut.setPresetClassType(EffectPresetClassType.Exit);
final int fps = 33;
ArrayList<String> frames = new ArrayList<String>();
PresentationAnimationsGenerator animationsGenerator = new PresentationAnimationsGenerator(presentation);
try
{
PresentationPlayer player = new PresentationPlayer(animationsGenerator, fps);
try {
player.setFrameTick((sender, arguments) ->
{
try {
String frame = String.format("frame_%04d.png", sender.getFrameIndex());
ImageIO.write(arguments.getFrame(), "PNG", new java.io.File(frame));
frames.add(frame);
} catch (IOException e) {
throw new RuntimeException(e);
}
});
animationsGenerator.run(presentation.getSlides());
} finally {
if (player != null) player.dispose();
}
} finally {
if (animationsGenerator != null) animationsGenerator.dispose();
}
// Configure ffmpeg binaries folder. See this page: https://github.com/rosenbjerg/FFMpegCore#installation
FFmpeg ffmpeg = new FFmpeg("path/to/ffmpeg");
FFprobe ffprobe = new FFprobe("path/to/ffprobe");
FFmpegBuilder builder = new FFmpegBuilder()
.addExtraArgs("-start_number", "1")
.setInput("frame_%04d.png")
.addOutput("output.avi")
.setVideoFrameRate(FFmpeg.FPS_24)
.setFormat("avi")
.done();
FFmpegExecutor executor = new FFmpegExecutor(ffmpeg, ffprobe);
executor.createJob(builder).run();
} catch (IOException e) {
e.printStackTrace();
}
Konversi lain yang Didukung
Anda juga dapat mengonversi PowerPoint ke file dalam format lain