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#程序来演示如何设置,同时对文档内的已有信息,也可以实现读取或删除等 ...
随机推荐
- Flink-v1.12官方网站翻译-P018-Event Time
事件时间 在本节中,您将学习如何编写时间感知的Flink程序.请看一下及时流处理,了解及时流处理背后的概念. 关于如何在Flink程序中使用时间的信息请参考windowing和ProcessFunct ...
- Flink-v1.12官方网站翻译-P005-Learn Flink: Hands-on Training
学习Flink:实践培训 本次培训的目标和范围 本培训介绍了Apache Flink,包括足够的内容让你开始编写可扩展的流式ETL,分析和事件驱动的应用程序,同时省略了很多(最终重要的)细节.本书的重 ...
- Jenkins(6)测试报告邮件发送
前言 前面已经实现在jenkins上展示html的测试报告,接下来只差最后一步,把报告发给你的领导,展示你的劳动成果了. 安装 Email Extension Plugin 插件 jenkins首页- ...
- LaTeX 环境安装&编译器配置
推荐网站:https://www.latexstudio.net/articles/ (基本所有的latex疑惑都可以在这里得到解决) 入门视频:两小时短小精悍,让你轻松入门,https://www. ...
- AtCoder Beginner Contest 164
比赛链接:https://atcoder.jp/contests/abc164 A - Sheep and Wolves #include <bits/stdc++.h> using na ...
- zjnu1749 PAROVI (数位dp)
Description The distance between two integers is defined as the sum of the absolute result of subtra ...
- Best Reward && Girls' research
After an uphill battle, General Li won a great victory. Now the head of state decide to reward him w ...
- 2020牛客暑期多校训练营(第二场) F.Fake Maxpooling (单调队列)
题意:有一个\(n\)x\(m\)的矩阵,\(A_{i,j}=lcm(i,j)\),对于每个\(k\)x\(k\)的子矩阵,其最大元素贡献给答案,求答案的最大值. 题解:矩阵构成我们直接\(i*j/g ...
- Linux 搭建网站
wget http://dl.wdlinux.cn/lanmp_laster.tar.gz tar zxvf lanmp_laster.tar.gz sh lanmp.sh https://www.w ...
- 前端模块化之ES Module
一.概述 之前提到的几种模块化规范:CommonJS.AMD.CMD都是社区提出的.ES 2015在语言层面上实现了模块功能,且实现简单,可以替代CommonJS和AMD规范,成为在服务器和浏览器通用 ...