Konwertuj PPT na wideo w Javie

Potężny wieloplatformowy interfejs Java API do konwersji programu PowerPoint na wideo przy użyciu kodu Java

Konwertuj PowerPoint na wideo za pomocą Aspose.Slides

Aspose.Slides for Java to potężna biblioteka Java używana do tworzenia, edytowania i manipulowania prezentacjami, a także konwertowania prezentacji programu PowerPoint na inne dokumenty i filmy . W takim przypadku, aby przekonwertować PowerPoint na wideo, musisz użyć Aspose.Slides wraz z ffmpeg.

Oto jak działa proces konwersji PPT na wideo: Aspose.Slides służy do generowania zestawu klatek (ze slajdów prezentacji), a następnie FFMpegCore (ffmpeg) jest używany do tworzenia wideo na podstawie klatek.

Jak przekonwertować PPT na wideo

  1. Zainstaluj Aspose.Slides for Java, postępując zgodnie z instrukcjami tutaj . Pobierz ffmpeg tutaj.

  2. Dodaj to do swojego pliku POM:

       <zależność>
         <groupId>net.bramp.ffmpeg</groupId>
         <artifactId>ffmpeg</artifactId>
         <wersja>0.7.0</wersja>
       </zależność>
    

  3. Skopiuj, wklej, a następnie uruchom Java PowerPoint do kodu wideo.

Konwertuj PowerPoint na wideo w Javie

Użyj tego kodu Java, aby przekonwertować PPT na wideo:

Kod Java do konwersji programu PowerPoint na wideo


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();
}

Inne obsługiwane konwersje

Możesz także konwertować PowerPoint do plików w innych formatach