spire.doc for java 支持将 office(word/excel/powerpoint)、pdf、txt 等文件作为 ole 对象插入到 word 文档,双击该对象可直接访问或编辑嵌入的对象文件。除了以上常见的文件格式对象以外,也支持插入多媒体文件,如视频、音频等,本文将对此作详细介绍。
安装 spire.doc for java
首先,您需要在 java 程序中添加 spire.doc.jar 文件作为依赖项。jar 文件可以从此链接下载。如果您使用 maven,则可以将以下代码添加到项目的 pom.xml 文件中,从而在应用程序中导入 jar 文件。
com.e-iceblue
https://repo.e-iceblue.cn/repository/maven-public/
e-iceblue
spire.doc
4.12.7
嵌入多媒体文件
代码中嵌入多媒体文件的方法是通过调用 appendoleobject(inputstream olestream, docpicture olepicture, string fileextension) 方法来实现,该方法中的三个参数解释分别为:
- olestream:ole 文件流
- olepicture:用于显示 ole 对象的图像(图标)
- fileextension:嵌入的文件对象扩展名(如:mp3、mp4、avi 等)
主要代码步骤解析:
- 创建 document 类的实例并添加 section 节。
- 添加段落,调用 paragraph.appendoleobject() 方法将多媒体文件作为 ole 对象嵌入到段落。
- 通过 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);
}
}
嵌入后的文档效果:
申请临时 license
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用javascript。 获取有效期 30 天的临时许可证。