C#?VB.NET?實(shí)現(xiàn)在Word中嵌入多媒體(視頻、音頻)文件
引入dll
1.通過NuGet安裝dll(2種方法)
1.1可以在Visual Studio中打開“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“管理NuGet包”,然后搜索Free Spire.Doc安裝。
1.2將以下內(nèi)容復(fù)制到PM控制臺安裝。
Install-Package FreeSpire.Doc -Version 9.9.7
2.手動添加dll引用
可通過手動下載包,然后解壓,找到BIN文件夾下的Spire.Doc.dll。在Visual Studio中打開“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“添加引用”將本地路徑BIN文件夾下的dll文件添加引用至程序。
嵌入多媒體文件
代碼中嵌入多媒體文件的方法是通過調(diào)用AppendOleObject(Stream oleStream, DocPicture olePicture, string fileExtension)方法來實(shí)現(xiàn),該方法中的三個參數(shù)解釋分別為:
- oleStream: OLE文件流
- olePicture: 用于顯示OLE對象的圖像(圖標(biāo))
- fileExtension: 嵌入的文件對象擴(kuò)展名(如:mp3、mp4、avi等)
主要代碼步驟解析
1. 初始化Document類的一個新實(shí)例并添加一個新的節(jié)。
2. 添加段落,調(diào)用Paragraph.AppendOleObject()方法將多媒體文件作為OLE對象嵌入到段落。
3. 通過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)
{
//實(shí)例化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.IO
Namespace EmbedMediaFile
Class Program
Private Shared Sub Main(args As String())
'實(shí)例化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
嵌入效果后的文檔效果

注意事項(xiàng)
- 代碼中的所有文件路徑均為的VS程序的Debug路徑,如:F:\VS2017Project\InsertOLE_Doc\EmbedMediaFile\bin\Debug\Result.docx,文件路徑自定義為其他路徑。
- 以上代碼程序中引入的是免費(fèi)Word庫 Free Spire.Doc for .NET版本中的dll。?
以上就是C#/VB.NET 實(shí)現(xiàn)在Word中嵌入多媒體(視頻、音頻)文件 的詳細(xì)內(nèi)容,更多關(guān)于C#/VB.NET Word嵌入多媒體文件的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
WPF+ASP.NET SignalR實(shí)現(xiàn)后臺通知功能的示例代碼
本文以一個簡單示例,簡述如何通過WPF+ASP.NET SignalR實(shí)現(xiàn)消息后臺通知以及數(shù)據(jù)的實(shí)時刷新,僅供學(xué)習(xí)分享使用,如有不足之處,還請指正2022-09-09
C#簡單實(shí)現(xiàn)防止多個程序運(yùn)行的方法
這篇文章主要介紹了C#簡單實(shí)現(xiàn)防止多個程序運(yùn)行的方法,涉及C#進(jìn)程操作的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2016-02-02
C#實(shí)現(xiàn)讀取Word表格到DataSet
在應(yīng)用項(xiàng)目里,多數(shù)情況下我們會遇到導(dǎo)入 Excel 文件數(shù)據(jù)到數(shù)據(jù)庫的功能需求,但某些情況下,也存在使用 Word 進(jìn)行表格數(shù)據(jù)編輯的情況,這其中也包括導(dǎo)入Word內(nèi)容的功能,比如表格數(shù)據(jù)導(dǎo)出到DataSet數(shù)據(jù)集,本文將給大家介紹了C#讀取Word表格到DataSet2023-12-12

