您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“C#/VB.NET如何實現從PPT中提取圖片”,內容詳細,步驟清晰,細節處理妥當,希望這篇“C#/VB.NET如何實現從PPT中提取圖片”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
本次測試時,在程序中引入 Free Spire.Presentation.dll 文件。
方法1:
將Free Spire.Presentation for .NET 下載到本地,解壓,找到 BIN 文件夾下的 Spire.Presentation.dll。然后在 Visual Studio 中打開“解決方案資源管理器”,鼠標右鍵點擊“引用”,“添加引用”,將本地路徑 BIN 文件夾下的 dll 文件添加引用至程序。
方法2::
通過 NuGet安裝。可通過以下 2 種方法安裝:
1. 可以在 Visual Studio 中打開“解決方案資源管理器”,鼠標右鍵點擊“引用”,“管理 NuGet 包”,然后搜索“Free Spire.Presentation”,點擊“安裝”。等待程序安裝完成。
2. 將以下內容復制到 PM 控制臺安裝。
Install-Package FreeSpire.Presentation -Version 7.8
初始化 Presentation 類的一個實例。
使用 Presentation.LoadFromFile() 方法加載 PowerPoint 演示文稿。
通過 Presentation.Images 屬性獲取演示文稿中所有圖片的集合。
遍歷集合,調用ImageCollection[int].Image.Save()方法將集合中的圖片保存到圖片文件中。
C#
using Spire.Presentation; using Spire.Presentation.Collections; using System.Drawing; namespace ExtractImagesFromPresentation { internal class Program { static void Main(string[] args) { //初始化Presentation類的實例 Presentation ppt = new Presentation(); //加載PowerPoint演示文稿 ppt.LoadFromFile("示例文檔.pptx"); //獲取演示文稿的圖像集 ImageCollection imageCollection = ppt.Images; //遍歷集合中的圖像 for (int i = 0; i < imageCollection.Count; i++) { //提取圖像 imageCollection[i].Image.Save(string.Format("Presentation\\圖片{0}.png", i)); } ppt.Dispose(); } } }
VB.NET
Imports Spire.Presentation Imports Spire.Presentation.Collections Namespace ExtractImagesFromPresentation Friend Class Program Private Shared Sub Main(ByVal args As String()) '初始化Presentation類的實例 Dim ppt As Presentation = New Presentation() '加載PowerPoint演示文稿 ppt.LoadFromFile("示例文檔.pptx") '獲取演示文稿的圖像集 Dim imageCollection As ImageCollection = ppt.Images '遍歷集合中的圖像 For i As Integer = 0 To imageCollection.Count - 1 '提取圖像 imageCollection(i).Image.Save(String.Format("Presentation\圖片{0}.png", i)) Next ppt.Dispose() End Sub End Class End Namespace
初始化 Presentation 類的一個實例。
使用 Presentation.LoadFromFile() 方法加載 PowerPoint 演示文稿。
通過 Presentation.Slides[int] 屬性按索引獲取特定幻燈片。
遍歷幻燈片上的所有形狀。
檢查形狀是否為 SlidePicture 或 PictureShape 類型。 如果結果為真,則使用 SlidePicture.PictureFill.Picture.EmbedImage.Image.Save()或 PictureShape.EmbedImage.Image.Save() 方法將圖像保存到圖像文件。
C#
using Spire.Presentation; namespace ExtractImagesFromSlide { internal class Program { static void Main(string[] args) { //初始化 Presentation 類的一個實例 Presentation ppt = new Presentation(); //加載 PowerPoint 演示文稿 ppt.LoadFromFile("示例文檔.pptx"); //獲取指定幻燈片 ISlide slide = ppt.Slides[1]; int i = 0; //遍歷指定幻燈片上的所有形狀 foreach (IShape s in slide.Shapes) { //檢查形狀是否為SlidePicture類型 if (s is SlidePicture) { //提取圖像 SlidePicture ps = s as SlidePicture; ps.PictureFill.Picture.EmbedImage.Image.Save(string.Format(@"D:\.NET\提取圖片\bin\Debug\Slide\圖像{0}.png", i)); i++; } //檢查形狀是否為 PictureShape 類型 if (s is PictureShape) { //提取圖像 PictureShape ps = s as PictureShape; ps.EmbedImage.Image.Save(string.Format(@"D:\.NET\提取圖片\bin\Debug\Slide\圖像{0}.png", i)); i++; } } } } }
VB.NET
Imports Spire.Presentation Namespace ExtractImagesFromSlide Friend Class Program Private Shared Sub Main(ByVal args As String()) '初始化 Presentation 類的一個實例 Dim ppt As Presentation = New Presentation() '加載 PowerPoint 演示文稿 ppt.LoadFromFile("示例文檔.pptx") '獲取指定幻燈片 Dim slide As ISlide = ppt.Slides(1) Dim i = 0 '遍歷指定幻燈片上的所有形狀 For Each s As IShape In slide.Shapes '檢查形狀是否為SlidePicture類型 If TypeOf s Is SlidePicture Then '提取圖像 Dim ps As SlidePicture = TryCast(s, SlidePicture) ps.PictureFill.Picture.EmbedImage.Image.Save(String.Format("D:\.NET\提取圖片\bin\Debug\Slide\圖像{0}.png", i)) i += 1 End If '檢查形狀是否為 PictureShape 類型 If TypeOf s Is PictureShape Then '提取圖像 Dim ps As PictureShape = TryCast(s, PictureShape) ps.EmbedImage.Image.Save(String.Format("D:\.NET\提取圖片\bin\Debug\Slide\圖像{0}.png", i)) i += 1 End If Next End Sub End Class End Namespace
讀到這里,這篇“C#/VB.NET如何實現從PPT中提取圖片”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。