Java實(shí)現(xiàn)在Word中嵌入多媒體(視頻、音頻)文件
Word中可將Office(Word/Excel/PowerPoint)、PDF、txt等文件作為OLE對(duì)象插入到文檔中,雙擊該對(duì)象可直接訪問或編輯該文件,除了以上常見的文件格式對(duì)象,也可以插入多媒體文件,如視頻、音頻等。本篇文章將對(duì)此作相關(guān)介紹。
Jar導(dǎo)入(2種方法)
1.通過 Maven 安裝
在pom.xml中配置如下內(nèi)容導(dǎo)入:
<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.手動(dòng)添加jar
下載 Jar 包(Free Spire.Doc for Java)到本地,解壓,找到lib文件夾下的Spire.Doc.jar。
在IDEA中打開“Project Structure”界面,然后執(zhí)行如下圖中的步驟來完成jar導(dǎo)入:



?嵌入多媒體文件
代碼中嵌入多媒體文件的方法是通過調(diào)用appendOleObject(InputStream oleStream, DocPicture olePicture, String fileExtension)方法來實(shí)現(xiàn),該方法中的三個(gè)參數(shù)解釋分別為:
- oleStream:OLE文件流
- olePicture:用于顯示OLE對(duì)象的圖像(圖標(biāo))
- fileExtension:嵌入的文件對(duì)象擴(kuò)展名(如:mp3、mp4、avi等)
另外,該jar包中的Paragraph類提供的添加OLE對(duì)象的方法中,可通過設(shè)置不同參數(shù),以多種方式來添加OLE對(duì)象,如圖:

主要代碼步驟解析:
1. 初始化Document類的一個(gè)新實(shí)例并添加一個(gè)新的節(jié)。
2. 添加段落,調(diào)用Paragraph.appendOleObject()方法將多媒體文件作為OLE對(duì)象嵌入到段落。
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 {
//實(shí)例化Document類的對(duì)象,并添加Section
Document 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");
//添加一個(gè)空白段落2
Paragraph 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);
}
}
嵌入后的文檔效果:

注意事項(xiàng)
代碼中的所有文件路徑均為IDEA程序的程序項(xiàng)目文件夾路徑,如: F:\IDEAProject\OLE_Doc\Result.docx,文件路徑可自定義為其他路徑。?
到此這篇關(guān)于Java實(shí)現(xiàn)在Word中嵌入多媒體(視頻、音頻)文件的文章就介紹到這了,更多相關(guān)Java Word中嵌入多媒體文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaCV調(diào)用百度AI實(shí)現(xiàn)人臉檢測方法詳解
在檢測人臉數(shù)量、位置、性別、口罩等場景時(shí),可以考慮使用百度開放平臺(tái)提供的web接口,一個(gè)web請求就能完成檢測得到結(jié)果。本文就為大家介紹JavaCV如何調(diào)用百度AI實(shí)現(xiàn)最簡單的人臉檢測,需要的可以參考一下2022-01-01
利用Redis實(shí)現(xiàn)延時(shí)處理的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于利用Redis實(shí)現(xiàn)延時(shí)處理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用Redis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
java對(duì)象克隆實(shí)現(xiàn)方法詳解
這篇文章主要給大家介紹了關(guān)于java對(duì)象克隆實(shí)現(xiàn)的相關(guān)資料,克隆就是復(fù)制一個(gè)對(duì)象的副本,Java支持我們對(duì)一個(gè)對(duì)象進(jìn)行克隆,通常用在裝飾模式和原型模式中,需要的朋友可以參考下2023-06-06
Java數(shù)據(jù)結(jié)構(gòu)與算法之棧(Stack)實(shí)現(xiàn)詳解
這篇文章主要為大家詳細(xì)介紹了Java數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)筆記第二篇,Java數(shù)據(jù)結(jié)構(gòu)與算法之棧Stack實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09
Java簡單使用EasyExcel操作讀寫excel的步驟與要點(diǎn)
相信現(xiàn)在很多搞后端的同學(xué)大部分做的都是后臺(tái)管理系統(tǒng),那么管理系統(tǒng)就肯定免不了Excel的導(dǎo)出導(dǎo)入功能,下面這篇文章主要給大家介紹了關(guān)于Java簡單使用EasyExcel操作讀寫excel的步驟與要點(diǎn),需要的朋友可以參考下2022-09-09

