Java 在Word中嵌入多媒体(视频、音频)文件
Word中可将Office(Word/Excel/PowerPoint)、PDF、txt等文件作为OLE对象插入到文档中,双击该对象可直接访问或编辑该文件,除了以上常见的文件格式对象,也可以插入多媒体文件,如视频、音频等。本篇文章将对此作相关介绍。
Jar导入(2种方法)
1.通过 Maven 安装
在pom.xml中配置如下内容导入:
<repositories><repository><id>com.e-iceblue</id><url>https://repo.e-iceblue.cn/repository/maven-public/</url></repository></repositories>
<dependencies><dependency><groupId>e-iceblue</groupId><artifactId>spire.doc.free</artifactId><version>3.9.0</version></dependency>
</dependencies>
2.手动添加jar
下载 Jar 包(Free Spire.Doc for Java)到本地,解压,找到lib文件夹下的Spire.Doc.jar。
在IDEA中打开“Project Structure”界面,然后执行如下图中的步骤来完成jar导入:
嵌入多媒体文件
代码中嵌入多媒体文件的方法是通过调用appendOleObject(InputStream oleStream, DocPicture olePicture, String fileExtension)方法来实现,该方法中的三个参数解释分别为:
- oleStream:OLE文件流
- olePicture:用于显示OLE对象的图像(图标)
- fileExtension:嵌入的文件对象扩展名(如:mp3、mp4、avi等)
另外,该jar包中的Paragraph类提供的添加OLE对象的方法中,可通过设置不同参数,以多种方式来添加OLE对象,如图:
主要代码步骤解析:
1. 初始化Document类的一个新实例并添加一个新的节。
2. 添加段落,调用Paragraph.appendOleObject()方法将多媒体文件作为OLE对象嵌入到段落。
3. 通过Document.saveToFile(String fileName, FileFormat fileFormat)保存文档到指定路径。
Java
import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.ParagraphStyle;
import com.spire.doc.fields.DocPicture;import java.awt.*;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;public class EmbedMediaFile {public static void main(String[] args)throws IOException {//实例化Document类的对象,并添加SectionDocument doc = new Document();Section section = doc.addSection();//定义段落样式ParagraphStyle style1 = new ParagraphStyle(doc);style1.setName("Style");style1.getCharacterFormat().setFontName("Calibri");style1.getCharacterFormat().setFontSize(18);style1.getCharacterFormat().setBold(true);style1.getCharacterFormat().setTextColor(new Color(123,104,238));doc.getStyles().add(style1);//添加段落1,嵌入视频文件Paragraph para1 = section.addParagraph();para1.appendText("嵌入视频文件:");para1.applyStyle(style1.getName());InputStream stream1 = new FileInputStream("Video.mp4");DocPicture pic1 = new DocPicture(doc);pic1.loadImage("logo1.png");para1.appendOleObject(stream1, pic1, "mp4");//添加一个空白段落2Paragraph para2 = section.addParagraph();//添加段落3,嵌入音频文件Paragraph para3 = section.addParagraph();para3.appendText("嵌入音频文件:");para3.applyStyle(style1.getName());InputStream stream2 = new FileInputStream("Audio.mp3");DocPicture pic2 = new DocPicture(doc);pic2.loadImage("logo2.png");para3.appendOleObject(stream2, pic2, "mp3");//保存文档doc.saveToFile("Result.docx", FileFormat.Docx_2013);}
}
嵌入后的文档效果:
注意事项
代码中的所有文件路径均为IDEA程序的程序项目文件夹路径,如: F:\IDEAProject\OLE_Doc\Result.docx,文件路径可自定义为其他路径。
—End—
Java 在Word中嵌入多媒体(视频、音频)文件相关推荐
- 如何Java 在Word中嵌入多媒体(视频、音频)文件
Word中可将Office(Word/Excel/PowerPoint).PDF.txt等文件作为OLE对象插入到文档中,双击该对象可直接访问或编辑该文件,除了以上常见的文件格式对象,也可以插入多媒体 ...
- java实现word中嵌入附件
前言 使用java往word中嵌入其他文件最重要的是要创建ole.目前将文件嵌入了word但是图标是没有的,因此自己生成了一个图标替代. 部分代码 代码如下: POIFSFileSystem fs = ...
- Word控件Spire.Doc 【其他】教程(8):在 Word 中嵌入多媒体文件
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...
- html 插入多媒体对象,如何在word中插入多媒体对象
内容提要:本文介绍如何在word中插入多媒体对象,比如MP3.电影和动画等. word是我们在办公软件中使用频率较高的软件,如何在Word中插入多媒体对象,比如MP3.电影和动画等,让我们制作的文件成 ...
- Java读取word中表格
因为要新建一个站,公司要把word表格的部分行列存到数据库中.之前用java操作过excel,本来打算用java从word表格中读取数据,再存到数据库中,结果因为权限不够,无法访问公司要写的那个数据库 ...
- Java 实现word 中写入文字图片的解决方案
Java 实现word 中写入文字图片的解决方案 参考文章: (1)Java 实现word 中写入文字图片的解决方案 (2)https://www.cnblogs.com/jianguang/p/57 ...
- Java在Word中插入上标和下标
前言 在某些情况下,你可能需要在Microsoft Word中插入上标和下标.例如,当你正在创建一个涉及科学公式的学术文件时.在这篇文章中,你将学习如何使用Spire.Doc for Java库在Wo ...
- java读取word中的英语音标(Kingsoft Phonetic Plain字体的)
java读取word中的英语音标(Kingsoft Phonetic Plain字体的) 代码: 读取word中的文档遇到了带音标的,Kingsoft Phonetic Plain这种字体在后台打断点 ...
- 网页中怎么插入qq php,在网页中嵌入QQ视频的步骤和代码
QQ视频,或者我们叫腾讯视频(v.qq.com),跟优酷不太一样.对于每个视频页面,QQ视频并没有提供可以让我们便捷地将视频资源嵌入其它页面(论坛,或者自己的wordpress博客页面)的代码,而是只 ...
最新文章
- MYSQL人事工资管理系统-插入数据(三)
- Vim使用技巧及基本命令分类
- python课程价格哪个好-上海Python线上远程课
- c语言药房系统书写指导书,C语言药房管理系统[文书借鉴]
- 第二次作业+105032014101
- PostgreSQL表的行数统计
- 解决使用Servlet输出乱码问题(一行代码解决一切)
- android按钮置于顶层,如何把按键显示在最顶层窗口上(屏幕最顶上)
- 修改kubelet启动参数
- java获取运行时对象,java 面向对象(四十一):反射(五)反射应用二:获取运行时类的完整结构...
- java cpu利用率上不去_Java 面试突击之 Java 并发知识基础 amp; 进阶考点全解析
- react使用中的注意事项(持续更新)
- CISSP 考证进度篇(持续监督中)
- Ubuntu下VSCode使用等宽字体设置
- CSS 长度单位详细总结
- spring boot 在fastdfs文件上传大小限制
- maxima matlab,为什么大家不用Octave等代替Matlab,Maxima代替Maple?
- WPF中Mvvm模式的理解
- Excel 数据解析异常
- P4944 PION贪吃蛇 题解
热门文章
- 2017、2018、2019、2020、2021数控机床数控系统采集方案汇总
- fpga驱动步进电机转动指定角度_PLC对步进电机进行定位控制程序
- 易语言制作通用对话框
- Android fragment回退栈
- 如何让收到的邮件附件自动储存在Sharepoint里
- 2021年东方市铁路中学高考成绩查询,2020东方市中考分数线预测
- SQL触发器--当表数据发生变化时,将数据同步到另一张表中
- 小米MiFlash报错error:FAILED(remote:updatesparsecrclistfailed)
- java 切图_java用pdfbox切图并重绘宽高
- 怎么把Excel转换成Word文档?一分钟就能教会你