PowerPoint 演示文稿是我们常用的办公软件之一。为了能够更加全面细致地展示要说明的内容,视频不失为一种很好的展示方式。本文将使用Java代码来演示如何插入视频到PowerPoint幻灯片,同时也将介绍提取视频以及设置视频播放模式的方法。
使用工具:Free S for Java
测试环境:JDK 1.8.0、Intellij IDEA 2019
Jar包导入:
方式一:在E-iceblue中文官网上下载产品包,解压后在lib文件夹下找到S.jar,然后手动将其导入IDEA。
方式二:在IDEA中创建Maven项目,然后在下键入以下代码,最后点击“Import Changes”即可。
<repositories> <repository> <id>com.e-iceblue</id> <url>;/url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>;/artifactId> <version>3.9.0</version> </dependency> </dependencies>
代码示例
示例一 插入视频到PowerPoint幻灯片
import com..*; import javax.imageio.ImageIO; import java.awt.geom.Rectangle2D; import java.awt.image.BufferedImage; import java.io.File; public class InsertVideo { public static void main(String[] args) throws Exception { //加载PowerPoint示例文档 Presentation presentation = new Presentation(); ("C:\\Users\\Test1\\Desktop\\Sam;); //获取第一张幻灯片 ISlide slide = ().get(0); //插入视频到第一张幻灯片并设置封面图片 Rec videoRect = new Rec(150, 120, 400, 225); IVideo video = ().get(0).getShapes().appendVideoMedia((new java.io.File("C:\\Users\\Test1\\Desktop\\video.mp4")).getAbsolutePath(), videoRect); BufferedImage coverImage = ImageIO.read( new File("C:\\Users\\Test1\\Desktop\\image.png")); video.getPictureFill().getPicture().setEmbedImage().append(coverImage)); //保存结果文档 ("outpu;, FileFormat.PPTX_2010); (); } }
效果图:
示例二 提取PowerPoint幻灯片中已有的视频
import com..IShape; import com..ISlide; import com..IVideo; import com..Presentation; public class ExtractVideo { public static void main(String[] args) throws Exception { //实例化一个ppt对象并加载示例文档 Presentation ppt = new Presentation(); ("C:\\Users\\Test1\\Desktop\\In;); //获取第一张幻灯片 ISlide slide = ().get(0); IVideo video = null; for(int i = 0; i< ().getCount(); i++) { IShape shape = ().get(i); if ((shape instanceof IVideo)) { //保存视频 video = (IVideo) shape; video.getEmbeddedVideoData().saveToFile("output/ExtractVideo"+i+".mp4"); } } } }
示例三 设置视频播放模式
import com..FileFormat; import com..IShape; import com..ISlide; import com..IVideo; import com..Presentation; import com..VideoPlayMode; public class PlayType { public static void main(String[] args) throws Exception { //实例化一个presentation对象并加载示例文档 Presentation presentation = new Presentation(); ("C:\\Users\\Test1\\Desktop\\In;); //获取第一张幻灯片 ISlide slide = ().get(0); IVideo video = null; for(int i = 0; i< ().getCount(); i++) { IShape shape = ().get(i); if ((shape instanceof IVideo)) { video = (IVideo) shape; //设置视频的播放模式为自动播放 ); //设置视频的播放模式为单击时播放 video.setPlayMode); } } //保存PPT文档 ("output/单击播放.pptx", FileFormat.PPTX_2010); } }
设置效果: