
在各種情況下,演示者在他們的演示中包括聲音或音頻剪輯。 MS PowerPoint 提供音頻幀以將聲音插入幻燈片。在本文中,您將學習如何自動處理演示文稿中的音頻幀。特別是,本文將介紹如何使用 C# 在 PowerPoint PPT 中添加音頻幀。此外,我們還將演示如何從 PPT 幻燈片中提取音頻幀。
在 PowerPoint PPT 中添加音頻幀的 C# API
要在 PowerPoint PPT/PPTX 中添加或提取音頻幀,我們將使用 Aspose.Slides for .NET。它是一個類庫,可讓您自動創建和操作 PowerPoint 和 OpenOffice 演示文稿。您可以通過 NuGet 或 下載 其 DLL 安裝 API。
PM> Install-Package Aspose.Slides.NET
在 C# 中的 PowerPoint PPT 中添加音頻幀
以下是使用 C# 將音頻添加到 PowerPoint PPT 的步驟。
- 首先,使用 Presentation 類創建一個新的演示文稿或加載現有的演示文稿。
- 然後,將文件中的音頻加載到 FileStream 對像中。
- 使用 ISlide.Shapes.AddAudioFrameEmbedded(Single, Single, Single, Single, Stream) 方法將音頻插入到演示文稿中,並將返回的音頻幀的引用獲取到 IAudioFrame 對像中。
- 設置其他屬性,例如 PlayMode、Volume 等。
- 最後,使用 Presentation.Save(String, SaveFormat) 方法保存演示文稿。
下面的代碼示例演示如何在 C# 中的 PowerPoint PPTX 中插入音頻。
// 負載演示
using (Presentation pres = new Presentation("AudioFrameEmbed_out.pptx"))
{
// 獲取第一張幻燈片
ISlide sld = pres.Slides[0];
// 加載 wav 聲音文件進行流式傳輸
FileStream fstr = new FileStream("sampleaudio.wav", FileMode.Open, FileAccess.Read);
// 添加音頻幀
IAudioFrame audioFrame = sld.Shapes.AddAudioFrameEmbedded(50, 150, 100, 100, fstr);
// 更改播放模式以在單擊時播放
audioFrame.PlayMode = AudioPlayModePreset.OnClick;
// 將音量設置為低
audioFrame.Volume = AudioVolumeMode.Low;
// 將音頻設置為跨幻燈片播放
audioFrame.PlayAcrossSlides = true;
// 設置音頻不循環
audioFrame.PlayLoopMode = false;
// 在幻燈片放映期間隱藏 AudioFrame
audioFrame.HideAtShowing = true;
// 播放後倒帶音頻開始
audioFrame.RewindAudio = true;
// 將 PPTX 文件保存到磁盤
pres.Save("AudioFrameEmbed_changed.pptx", SaveFormat.Pptx);
}
在 C# 中提取 PowerPoint PPT 中的音頻幀
您還可以從現有的 PowerPoint PPT 中提取音頻幀。以下是執行此操作的步驟。
- 首先,使用 Presentation 類加載 PowerPoint 演示文稿。
- 然後,從 Presentation.Slides 集合中將所需的幻燈片放入 ISlide 對像中。
- 獲取幻燈片過渡到 ISlideShowTransition 對象的引用。
- 從 ISlideShowTransition.Sound.BinaryData 中將聲音數據檢索到 byte[] 數組中。
- 最後,使用字節數組或將其保存為文件。
以下代碼示例演示如何在 C# 中從 PowerPoint PPTX 中提取音頻。
string presName = "AudioSlide.pptx";
// 加載演示文件
Presentation pres = new Presentation(presName);
// 訪問所需的幻燈片
ISlide slide = pres.Slides[0];
// 獲取幻燈片的幻燈片過渡效果
ISlideShowTransition transition = slide.SlideShowTransition;
// 在字節數組中提取聲音
byte[] audio = transition.Sound.BinaryData;
System.Console.WriteLine("Length: " + audio.Length);
C# PowerPoint API - 獲取免費許可證
通過獲得免費的臨時許可證,在沒有評估限制的情況下使用 Aspose.Slides for .NET。
結論
在本文中,您了解瞭如何使用 C# 在 PowerPoint PPT 中插入音頻。此外,您還看到瞭如何以編程方式從演示文稿中提取音頻剪輯。此外,您可以瀏覽 文檔 以了解有關 Aspose.Slides for .NET 的更多信息。此外,您可以將您的問題發佈到我們的論壇。
也可以看看
- 在 C# 中將 PowerPoint PPTX/PPT 轉換為 PNG 圖像
- 使用 C# 在 PowerPoint 演示文稿中設置幻燈片背景
- 使用 C# 為 PowerPoint PPTX 或 PPT 生成縮略圖
- 使用 C# 將動畫應用於 PowerPoint 中的文本
- 使用 C# 拆分 PowerPoint 演示文稿
提示:如果您需要從視頻剪輯中提取音頻,可以使用 Aspose MP4 到 MP3 轉換器 來完成這項工作。