Bädda in video i PowerPoint med Java

PowerPoint-presentationer innehåller ofta videoramar för att demonstrera något eller för att locka publiken. I många fall används videorna för att spara tid och göra presentationerna effektiva. I den här artikeln kommer du att lära dig hur du arbetar med videor i PowerPoint-filer programmatiskt. Speciellt kommer artikeln att täcka hur man bäddar in eller extraherar en video i en PowerPoint-presentation med Java.

Java API för att bädda in video i PowerPoint-presentationer

För att bädda in eller extrahera videor i PowerPoint-presentationer kommer vi att använda Aspose.Slides for Java. API:et är utformat för att skapa och manipulera PowerPoint- och OpenOffice-dokument. Du kan antingen ladda ner API:s JAR eller installera den med följande Maven-konfigurationer.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.8</version>
    <classifier>jdk16</classifier>
</dependency>

Bädda in en video i PowerPoint-presentation med Java

Följande är stegen för att bädda in en video i en PowerPoint-presentation med Java.

Följande kodexempel visar hur man bäddar in en video i en PowerPoint-presentation med Java.

// Ladda presentationen eller skapa en ny
Presentation pres = new Presentation();
try {
    // Få den första bilden
    ISlide sld = pres.getSlides().get_Item(0);
    
    // Lägg till video i presentationen
    IVideo vid = pres.getVideos().addVideo(new FileInputStream(new File("Wildlife.mp4")));

    // Lägg till videoram
    IVideoFrame vf = sld.getShapes().addVideoFrame(50, 150, 300, 350, vid);

    // Ställ in video till videoram
    vf.setEmbeddedVideo(vid);

    // Ställ in uppspelningsläge och volym för videon
    vf.setPlayMode(VideoPlayModePreset.Auto);
    vf.setVolume(AudioVolumeMode.Loud);

    // Skriv PPTX-filen till disken
    pres.save("VideoFrame.pptx", SaveFormat.Pptx);
} catch (Exception e) {
} finally {
    if (pres != null) pres.dispose();
}

Bädda in video från en webbkälla med Java

Du kan också bädda in en video i PowerPoint-presentationer från en webbkälla. Följande är stegen för att uppnå detta.

Följande kodexempel visar hur man bäddar in en video i presentationen från en webbkälla.

// Skapa en presentation eller ladda en befintlig
Presentation pres = new Presentation("presentation");
try {
      // lägg till videoFrame
      IVideoFrame videoFrame = pres.getSlides().get_Item(0).getShapes().addVideoFrame(
              10, 10, 427, 240, "https://www.youtube.com/embed/Tj75Arhq5ho");
      videoFrame.setPlayMode(VideoPlayModePreset.Auto);

      // ladda miniatyrbild
      String thumbnailUri = "http://img.youtube.com/vi/Tj75Arhq5ho/hqdefault.jpg";
      URL url;

      // Ställ in miniatyrbild
      try {
          url = new URL(thumbnailUri);
          videoFrame.getPictureFormat().getPicture().setImage(pres.getImages().addImage(url.openStream()));
      } catch (MalformedURLException e) {
          e.printStackTrace();
      } catch (IOException e) {
          e.printStackTrace();
      }
      // Spara presentationen
      pres.save("out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Extrahera video från en PowerPoint-presentation i Java

Aspose.Slides för Java låter dig också extrahera en video från en presentation. Nedan följer de enkla stegen för att uppnå detta.

Följande kodexempel visar hur man extraherar videor från en PowerPoint-presentation med Java.

// Ladda presentationen
Presentation pres = new Presentation("VideoSample.pptx");
try {
    // Slinga genom diabilder
   for (ISlide slide : pres.getSlides()) 
    {
        // Slinga genom former
       for (IShape shape : slide.getShapes()) 
        {
            if (shape instanceof VideoFrame) 
            {
                IVideoFrame vf = (IVideoFrame) shape;
                String type = vf.getEmbeddedVideo().getContentType();
                int ss = type.lastIndexOf('-');
                byte[] buffer = vf.getEmbeddedVideo().getBinaryData();

                //Hämta filtillägg
                int charIndex = type.indexOf("/");
                type = type.substring(charIndex + 1);

                FileOutputStream fop = new FileOutputStream("testing2." + type);
                fop.write(buffer);
                fop.flush();
                fop.close();
            }
        }
    }
} catch (IOException e) {
} finally {
    if (pres != null) pres.dispose();
}

Skaffa en gratis API-licens

Du kan använda Aspose.Slides för Java utan utvärderingsbegränsningar genom att begära en tillfällig licens.

Slutsats

I den här artikeln har du lärt dig hur du bäddar in videor i PowerPoint-presentationer med Java. Dessutom har du sett hur man extraherar videor från en presentation programmatiskt. Utöver detta kan du besöka dokumentationen för att utforska mer om Aspose.Slides för Java. Du kan också skicka dina frågor till vårt forum.

Se även

Info: Aspose utvecklade nyligen en gratis MP4 till MP3 webbapp som kan användas för att extrahera ljud från videofiler.