Word控件Spire.Doc 【其他】教程(8):在 Word 中嵌入多媒体文件

news/2024/10/19 17:20:53/

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转换和打印Word/PDF/Excel等格式文件处理,小巧便捷。 

E-iceblue 功能类库Spire 系列文档处理组件均由中国本土团队研发,不依赖第三方软件,不受其他国家的技术或法律法规限制,同时适配国产操作系统如中科方德、中标麒麟等,兼容国产文档处理软件 WPS(如 .wps/.et/.dps 等格式

Spire.Doc for.NET 最新下载(qun:767755948)icon-default.png?t=N4P3https://www.evget.com/product/3368/download

Spire.Doc for .NET 支持将 Office(Word/Excel/PowerPoint)、PDF、txt 等文件作为 OLE 对象插入到 Word 文档,双击该对象可直接访问或编辑该文件;除了以上常见的文件格式对象,也支持插入多媒体文件,如视频、音频等,本文将对此作详细介绍。

安装 Spire.Doc for .NET

首先,您需要将 Spire.Doc for.NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中的 DLL 文件可以从此链接下载,也可以通过 NuGet 安装。

PM> Install-Package Spire.Doc

嵌入多媒体文件

代码中嵌入多媒体文件的方法是通过调用 AppendOleObject(Stream oleStream, DocPicture olePicture, string fileExtension) 方法来实现,该方法中的三个参数解释分别为:

  • oleStream: OLE 文件流
  • olePicture: 用于显示 OLE 对象的图像(图标)
  • fileExtension: 嵌入的文件对象扩展名(如:mp3、mp4、avi 等)

主要代码步骤如下:

  • 初始化 Document 类的新实例并添加一个新的 Section 节。
  • 添加段落,调用 Paragraph.AppendOleObject() 方法将多媒体文件作为 OLE 对象嵌入到段落。
  • 通过 Document.SaveToFile(string fileName, FileFormat fileFormat) 方法保存文档到指定路径。

【C#】

using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using System.Drawing;
using System.IO;namespace EmbedMediaFile
{
class Program
{
static void Main(string[] args)
{
//实例化Document类的对象,并添加Section
Document doc = new Document();
Section section = doc.AddSection();//定义段落样式
ParagraphStyle style1 = new ParagraphStyle(doc);
style1.Name = "Style";
style1.CharacterFormat.FontName = "Calibri";
style1.CharacterFormat.FontSize = 18;
style1.CharacterFormat.Bold = true;
style1.CharacterFormat.TextColor = Color.BlueViolet;
doc.Styles.Add(style1);//添加段落1,嵌入视频文件
Paragraph para1 = section.AddParagraph();
para1.AppendText("嵌入视频文件:");
para1.ApplyStyle(style1.Name);
Stream s1 = File.OpenRead("Video.mp4");
DocPicture pic1 = new DocPicture(doc);
pic1.LoadImage(Image.FromFile("logo1.png"));
para1.AppendOleObject(s1, pic1, "mp4");//添加一个空白段落2
Paragraph para2 = section.AddParagraph();//添加段落3,嵌入音频文件
Paragraph para3 = section.AddParagraph();
para3.AppendText("嵌入音频文件:");
para3.ApplyStyle(style1.Name);
Stream s2 = File.OpenRead("Audio.mp3");
DocPicture pic2 = new DocPicture(doc);
pic2.LoadImage(Image.FromFile("logo2.png"));
para3.AppendOleObject(s2, pic2, "mp3");//保存文档
doc.SaveToFile("Result.docx", FileFormat.Docx2013);
}
}
}

【VB.NET】

Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields
Imports System.Drawing
Imports System.IONamespace EmbedMediaFile
Class Program
Private Shared Sub Main(args As String())
'实例化Document类的对象,并添加Section
Dim doc As New Document()
Dim section As Section = doc.AddSection()'定义段落样式
Dim style1 As New ParagraphStyle(doc)
style1.Name = "Style"
style1.CharacterFormat.FontName = "Calibri"
style1.CharacterFormat.FontSize = 18
style1.CharacterFormat.Bold = True
style1.CharacterFormat.TextColor = Color.BlueViolet
doc.Styles.Add(style1)'添加段落1,嵌入视频文件
Dim para1 As Paragraph = section.AddParagraph()
para1.AppendText("嵌入视频文件:")
para1.ApplyStyle(style1.Name)
Dim s1 As Stream = File.OpenRead("Video.mp4")
Dim pic1 As New DocPicture(doc)
pic1.LoadImage(Image.FromFile("logo1.png"))
para1.AppendOleObject(s1, pic1, "mp4")'添加一个空白段落2
Dim para2 As Paragraph = section.AddParagraph()'添加段落3,嵌入音频文件
Dim para3 As Paragraph = section.AddParagraph()
para3.AppendText("嵌入音频文件:")
para3.ApplyStyle(style1.Name)
Dim s2 As Stream = File.OpenRead("Audio.mp3")
Dim pic2 As New DocPicture(doc)
pic2.LoadImage(Image.FromFile("logo2.png"))
para3.AppendOleObject(s2, pic2, "mp3")'保存文档
doc.SaveToFile("Result.docx", FileFormat.Docx2013)
End Sub
End Class
End Namespace

嵌入后的文档效果:

以上便是如何在 Word 中嵌入多媒体文件,如果您有其他问题也可以继续浏览本系列文章,获取相关教程~。

 


http://www.ppmy.cn/news/276922.html

相关文章

代码随想录算法训练营第二天| 977.有序数组的平方 209.长度最小的子数组 59.螺旋矩阵||

LeetCode977.有序数组的平方 链接:有序数组的平方 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 看到这道题,我第一反应就是把每个数的平方算出来然后排序&#xff…

说说 Pluma 插件管理框架

1. 概述 Pluma 是一个用 C 开发的可用于管理插件的开源架构,其官网地址为:http://pluma-framework.sourceforge.net/。该架构是个轻量级架构,非常易于理解。 Pluma 架构有以下基本概念: 1)插件的外在行为体现为一个…

200SMART CPU输入/输出接线的几个关键点

总结来看,S7-200系列PLC提供4个不同的基本型号的8种CPU,其接线方式也可大致分为6种: 1.CPU SR20接线 2.CPU SR40接线 3.CPU CR40接线 4.CPU ST40接线 5. CPU SR60接线 6. CPU ST60接线 除了CPU外,我们还需要了解200smart PLC的数…

易桌面打印室一般多久能到,易桌面打印室怎么用

我是一名学生党,平常由于经常备考各种考试,所以打印是离不了的,以前经常到学校周边打印店去打印,可学校周边打印店经常人满为患,常常因为打印几十页资料在那排队等候1个多小时,大把大把的时间都被浪费掉了。…

台式计算机打印机共享,只需两步台式和笔记本电脑可共享打印机

对于很多办公室或者家庭而言,只有一台打印机,并且也不是什么先进的Wifi打印机,还是老老实实地用USB线连接到台式机上。当然也有无线路由器供笔记本无线上网,台式机和笔记本都连接在同一台无线路由器上。可是当笔记本需要打印的时候…

ubuntu 安装 canon ip1180 打印机(图片打印未解决)

网上说 canon PIXMA ip1180 和 canon PIXMA ip1800 的驱动通用。 1.到佳能官方下载两个驱动包 cnijfilter-common-2.70-1.i386.rpm cnijfilter-ip1800series-2.70-1.i386.rpm 使用 alien 把rpm 包转为 deb 的包 $sudo alien cnijfilter-common-2.70-1.i386.rpm $su…

Java抽象类介绍

1 问题 声明一个名为Employee的抽象类,其中包含name(姓名)和sex(性别)两个String类型的私有属性,并声明一个继承于Employee抽象类的子类Teacher。 2 方法 2.1 定义一个抽象类:Employee。 2.2 为Employee类设计一个抽象方法。 2.3实现抽象类Em…

Ubuntu 安装PIXMA IP1180打印机

佳能ip1180是一款在中国销售量很大的喷墨打印机。佳能官网未提供Linux驱动,本文描述了笔者在Ubuntu14.04下安装ip1180驱动的过程。 以下步骤分为3个主要部分,1-8步下载和安装驱动,9-14添加打印机,14-17配置墨盒信息。 打开终端窗口…