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 文件。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc</artifactId>
<version>12.9.0</version>
</dependency>
</dependencies>
嵌入多媒体文件
代码中嵌入多媒体文件的方法是通过调用 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 天的临时许可证。