欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實現(xiàn)在Word中嵌入多媒體(視頻、音頻)文件

 更新時間:2021年12月15日 14:53:08   作者:E-iceblue  
這篇文章主要介紹了Java如何實現(xiàn)在Word中嵌入多媒體(視頻、音頻)文件,文中的示例代碼講解詳細,對我們學(xué)習java有一定的幫助,感興趣的同學(xué)可以了解一下

Word中可將Office(Word/Excel/PowerPoint)、PDF、txt等文件作為OLE對象插入到文檔中,雙擊該對象可直接訪問或編輯該文件,除了以上常見的文件格式對象,也可以插入多媒體文件,如視頻、音頻等。本篇文章將對此作相關(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.手動添加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)方法來實現(xiàn),該方法中的三個參數(shù)解釋分別為:

  • oleStream:OLE文件流
  • olePicture:用于顯示OLE對象的圖像(圖標)
  • fileExtension:嵌入的文件對象擴展名(如:mp3、mp4、avi等)

另外,該jar包中的Paragraph類提供的添加OLE對象的方法中,可通過設(shè)置不同參數(shù),以多種方式來添加OLE對象,如圖:

主要代碼步驟解析:

1. 初始化Document類的一個新實例并添加一個新的節(jié)。

2. 添加段落,調(diào)用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類的對象,并添加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");

        //添加一個空白段落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);
    }
}

嵌入后的文檔效果:

注意事項

代碼中的所有文件路徑均為IDEA程序的程序項目文件夾路徑,如: F:\IDEAProject\OLE_Doc\Result.docx,文件路徑可自定義為其他路徑。?

到此這篇關(guān)于Java實現(xiàn)在Word中嵌入多媒體(視頻、音頻)文件的文章就介紹到這了,更多相關(guān)Java Word中嵌入多媒體文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mybatis動態(tài)sql超詳細講解

    Mybatis動態(tài)sql超詳細講解

    動態(tài)SQL是MyBatis的強大特性之一,顧名思義就是會動的SQL,即是能夠靈活的根據(jù)某種條件拼接出完整的SQL語句,下面這篇文章主要給大家介紹了關(guān)于Mybatis動態(tài)sql的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • Maven 多模塊父子工程的實現(xiàn)(含Spring Boot示例)

    Maven 多模塊父子工程的實現(xiàn)(含Spring Boot示例)

    這篇文章主要介紹了Maven 多模塊父子工程的實現(xiàn)(含Spring Boot示例),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2021-04-04
  • 跟我學(xué)Java Swing之游戲設(shè)計(2)

    跟我學(xué)Java Swing之游戲設(shè)計(2)

    跟我學(xué)Java Swing之游戲設(shè)計(2)...
    2006-12-12
  • springboot使用redis緩存亂碼(key或者value亂碼)的解決

    springboot使用redis緩存亂碼(key或者value亂碼)的解決

    在通過springboot緩存數(shù)據(jù)的時候,發(fā)現(xiàn)key是一堆很不友好的東西,本文主要介紹了springboot使用redis緩存亂碼(key或者value亂碼)的解決,感興趣的可以了解一下
    2023-11-11
  • Spring3 MVC請求參數(shù)獲取的幾種方法小結(jié)

    Spring3 MVC請求參數(shù)獲取的幾種方法小結(jié)

    本篇文章主要介紹了Spring3 MVC請求參數(shù)獲取的幾種方法小結(jié),非常具有實用價值,需要的朋友可以參考下。
    2017-03-03
  • gataway斷言工作流程源碼剖析

    gataway斷言工作流程源碼剖析

    這篇文章主要為大家介紹了gataway斷言工作流程源碼剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • Spring?Boot?4.0對于Java開發(fā)的影響和前景

    Spring?Boot?4.0對于Java開發(fā)的影響和前景

    探索Spring?Boot?4.0如何徹底革新Java開發(fā),提升效率并開拓未來可能性!別錯過這篇緊湊的指南,它帶你領(lǐng)略Spring?Boot的強大魅力和潛力,準備好了嗎?
    2024-02-02
  • 深入淺析drools中Fact的equality?modes

    深入淺析drools中Fact的equality?modes

    這篇文章主要介紹了drools中Fact的equality?modes的相關(guān)知識,本文通過圖文實例代碼相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • java區(qū)分絕對路徑和相對路徑的方法

    java區(qū)分絕對路徑和相對路徑的方法

    這篇文章主要介紹了java區(qū)分絕對路徑和相對路徑的方法,實例分析了java針對路徑操作的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • 關(guān)于spring中aop的注解實現(xiàn)方法實例詳解

    關(guān)于spring中aop的注解實現(xiàn)方法實例詳解

    這篇文章主要給大家介紹了關(guān)于spring中aop的注解實現(xiàn)方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面跟著小編來一起看看吧。
    2017-08-08

最新評論