Java 添加 、读取以及删除PPT幻灯片中的视频、音频文件
在PPT中,可以操作很多种元素,如形状、图形、文字、图片、表格等,也可以插入视频或者音频文件,来丰富幻灯片的内容呈现方式。下面将介绍在Java程序中如何来添加视频、音频文件到PPT幻灯片,读取和删除幻灯片中的视频、音频文件。
程序环境:导入Spire.Presentation.jar(免费版) ; jdk1.8.0
jar文件导入效果入下:
1. 添加视频、音频文件到幻灯片
import com.spire.presentation.*;
import java.awt.*; public class AddVideoAudio {
public static void main(String[] args) throws Exception{
//加载测试文档
Presentation ppt = new Presentation();
ppt.loadFromFile("test.pptx"); //获取第一张幻灯片
ISlide slide = ppt.getSlides().get(0); //添加视频文件到指定位置
slide.getShapes().appendVideoMedia("Transition.mp4",new Rectangle(550, 100, 180, 100));
//添加音频文件到指定位置
slide.getShapes().appendAudioMedia("Myheartwillgoon.mp3",620, 300, true); //保存文档
ppt.saveToFile("result.pptx",FileFormat.PPTX_2010);
}
}
2. 获取幻灯片中的视频、音频文件
import com.spire.presentation.*; public class ExtractVideoAudio {
public static void main(String[]args) throws Exception{
//加载包含视频、音频文件的PPT文档
Presentation ppt = new Presentation();
ppt.loadFromFile("result.pptx"); //获取第一张幻灯片
ISlide slide = ppt.getSlides().get(0); IVideo video = null;
IAudio audio = null; //遍历幻灯片中的shape,判断是否包含视频
for(int i = 0; i< slide.getShapes().getCount(); i++) {
IShape shape = slide.getShapes().get(i);
if ((shape instanceof IVideo)) {
//保存视频
video = (IVideo) shape;
video.getEmbeddedVideoData().saveToFile("提取的视频" + i + ".mp4");
}
}
//遍历幻灯片中的shape,判断是否包含音频
for(int j = 0; j< slide.getShapes().getCount(); j++)
{
IShape shape = slide.getShapes().get(j);
//保存音频
if ((shape instanceof IAudio)){
audio =(IAudio) shape;
audio.getData().saveToFile("提取的音频"+ j +".mp3");
}
}
}
}
3. 删除幻灯片中的视频、音频文件
import com.spire.presentation.*; public class DeleteVideoAndAudio {
public static void main(String[] args) throws Exception{
//加载包含视频、音频文件的PPT文档
Presentation ppt = new Presentation();
ppt.loadFromFile("result.pptx"); //获取第一张幻灯片
ISlide slide = ppt.getSlides().get(0); //遍历幻灯片中的shape,判断是否包含视频
for(int i = 0; i< slide.getShapes().getCount(); i++) {
IShape shape = slide.getShapes().get(i);
if ((shape instanceof IVideo)) {
//保存视频
IVideo video = (IVideo) shape;
slide.getShapes().remove(video);
}
}
//遍历幻灯片中的shape,判断是否包含音频
for(int j = 0; j< slide.getShapes().getCount(); j++)
{
IShape shape = slide.getShapes().get(j);
//保存音频
if ((shape instanceof IAudio)){
IAudio audio = (IAudio) shape;
slide.getShapes().remove(audio);
}
} //保存文档
ppt.saveToFile("DeleteVideoAndAudio.pptx",FileFormat.PPTX_2013);
ppt.dispose();
}
}
Java 添加 、读取以及删除PPT幻灯片中的视频、音频文件的更多相关文章
- Java 添加、修改、读取、删除PPT备注
概述 幻灯片中的备注信息是只提供给幻灯片演讲者观看的特定内容,在演讲者放映幻灯片时,备注信息可给演讲者提供讲解思路,起到辅助讲解的作用.本文将通过Java程序来演示如何操作PPT幻灯片中的备注信息,要 ...
- Java 添加、读取、删除PPT文档属性
文档属性是一些描述性的信息,它未包含在文件的实际内容中,但提供了有关文件的信息,可用来帮助查找和整理文件.以下示例中将介绍通过Java程序来添加PPT文档属性.读取.删除PPT文档中已有属性的方法. ...
- C# 在PPT幻灯片中创建图表
图表能够很直观的表现数据在某个时间段的变化趋势,或者呈现数据的整体和局部之间的相互关系,相较于大篇幅的文本数据,图表更增加了我们分析数据时选择的多样性,是我们挖掘数据背后潜在价值的一种更为有效地方式. ...
- Java 添加、修改PPT幻灯片中的表格
本文将介绍通过Java编程在PPT操作表格的方法.包括添加表格到PPT幻灯片,并设置表格样式.单元格对齐方式.单元格背景色.边框样式.字体.字号.合并单元格等:同时,通过加载已有表格的幻灯片也可以对表 ...
- C# 添加、修改、删除PPT中的超链接
本文介绍通过C# 编程如何在PPT幻灯片中添加超链接的方法,添加链接时,可给文本或者图片添加超链接,链接对象可指向网页地址.邮件地址.指定幻灯片等,此外,也可以参考文中编辑.删除幻灯片中已有超链接的方 ...
- Java 添加、读取、删除Excel文档属性
在文档属性中,可以设置诸多关于文档的信息,如创建时间.作者.单位.类别.关键词.备注等摘要信息以及一些自定义的文档属性.下面将通过Java程序来演示如何设置,同时对文档内的已有信息,也可以实现读取和删 ...
- Java 添加、读取、删除Excel图片
本文介绍在Java程序中如何添加图片到excel表格,添加图片时可设置图片大小.位置.旋转.超链接.可选文本等,以及如何读取.删除excel表格中已有的图片. 工具:Free Spire.XLS fo ...
- Java 添加、读取和删除 Excel 批注
批注是一种富文本注释,常用于为指定的Excel单元格添加提示或附加信息. Free Spire.XLS for Java 为开发人员免费提供了在Java应用程序中对Excel文件添加和操作批注的功能. ...
- C# 添加、读取、删除Excel文档属性
在文档属性中,可以设置诸多关于文档的信息,如创建时间.作者.单位.类别.关键词.备注等摘要信息以及一些自定义的文档属性.下面将通过C#程序来演示如何设置,同时对文档内的已有信息,也可以实现读取或删除等 ...
随机推荐
- (四)整合 RocketMQ ,实现请求异步处理
整合 RocketMQ ,实现请求异步处理 1.RocketMQ简介 1.1 架构图片 1.2 角色分类 1.3 通信机制 2.实现案例 2.1 项目结构图 2.2 配置文件 2.3 生产者配置 2. ...
- 输入DStream之基础数据源以及基于HDFS的实时wordcount程序
输入DStream之基础数据源以及基于HDFS的实时wordcount程序 一.Java方式 二.Scala方式 基于HDFS文件的实时计算,其实就是,监控一个HDFS目录,只要其中有新文件出现,就实 ...
- 函数式编程(hashlib模块)
hashlib模块 一.hashlib模块 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, S ...
- js打开新窗口并且居中显示
function openwindow(url,name,iWidth,iHeight) { var url; //转向网页的地址; var name; //网页名称,可为空; var iWidth; ...
- A - 敌兵布阵 ——B - I Hate It——C - A Simple Problem with Integers(线段树)
C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况.由于 ...
- VJ train1 I-彼岸
一道递推题(我这个菜鸡刚开始以为是排列组合) 题目: 突破蝙蝠的包围,yifenfei来到一处悬崖面前,悬崖彼岸就是前进的方向,好在现在的yifenfei已经学过御剑术,可御剑轻松飞过悬崖.现在的问题 ...
- rabbitmq学习二
rabbitmq的六种工作模式: 这里简单介绍下六种工作模式的主要特点: 简单模式:一个生产者,一个消费者 work模式:一个生产者,多个消费者,每个消费者获取到的消息唯一. 订阅模式:一个生产者发送 ...
- 梨子带你刷burp练兵场(burp Academy) - 服务器篇 - Sql注入 - SQL injection UNION attack, determining the number of columns returned by the query
目录 SQL injection UNION attack, determining the number of columns returned by the query SQL injection ...
- leetcode347 python
通过维护最小堆排序,使用heapq模块 一般使用规则:创建列表 heap = [] 函 数 ...
- linux内核编程入门--系统调用监控文件访问
参考的资料: hello world https://www.cnblogs.com/bitor/p/9608725.html linux内核监控模块--系统调用的截获 https://www. ...