在幻灯片中加入音频和视频是创建互动性 powerpoint 演示文稿的常见做法,可以帮助演讲者吸引观众并传达更多的信息。然而,如果内容需求发生变化,有时需要对这些多媒体元素进行替换或更新。本文将展示如何使用 spire.presentation for python 在 powerpoint 演示文稿中替换音频和视频以满足内容更新的需求,如更新过时的视频以及提高音频质量等。
安装 spire.presentation for python
本教程需要 spire.presentation for python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 windows 中。
pip install spire.presentation
如果您不确定如何安装,请参考: 如何在 windows 中安装 spire.presentation for python
使用 python 替换 powerpoint 演示文稿中的视频
通过 spire.presentation for python,开发者可以找到幻灯片中的视频形状并通过 ivideo.embeddedvideodata 属性来替换视频数据。在替换视频之后,视频的预览图也需要通过 ivideo.picturefill.picture 属性进行更新。详细操作步骤如下:
- 创建 presentation 类的对象,并使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 通过 presentation.videos 属性获取演示文稿中嵌入的视频为集合。
- 通过 presentation.slides[] 属性获取包含要替换的视频的幻灯片。
- 遍历幻灯片中的形状,并判断一个形状是否为 ivideo 类的实例。如果是,则使用 videocollection.appendbystream() 方法将新视频添加到视频集合中,并通过 ivideo.embeddedvideodata 属性替换原始视频。
- 使用 presentation.images.appendstream() 方法将新图片嵌入到演示文稿中,并通过 ivideo.picturefill.picture.embedimage 属性将其设置为视频的预览图。也可以通过 ivideo.picturefill.picture.url 属性设置在线图片作为预览图。
- 使用 presentation.savetofile() 方法保存演示文稿。
- python
from spire.presentation import *
from spire.presentation.common import *
# 创建 presentation 类的对象
pres = presentation()
# 加载一个 powerpoint 演示文稿
pres.loadfromfile("示例.pptx")
# 获取第二张幻灯片
slide = pres.slides[0]
# 获取演示文稿中的视频
videos = pres.videos
# 遍历幻灯片上的形状
for shape in slide.shapes:
# 检查形状是否为视频
if isinstance(shape, ivideo):
video = shape if isinstance(shape, ivideo) else none
# 将新视频附加到视频集合中
videodata = videos.appendbystream(stream("ocean2.mp4"))
# 用新视频替换形状中的视频
video.embeddedvideodata = videodata
# 在演示文稿中嵌入一张图片
imagedata = pres.images.appendstream(stream("ocean2.png"))
# 将新图片设置为视频的预览
video.picturefill.picture.embedimage = imagedata
# 保存演示文稿
pres.savetofile("output/替换视频.pptx", fileformat.pptx2016)
pres.dispose()
使用 python 替换 powerpoint 演示文稿中的音频
同样,开发者也可以使用 spire.presentation for python 找到演示文稿幻灯片中的特定音频并替换音频数据。详细操作步骤如下:
- 创建 presentation 类的对象,并使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿文件。
- 通过 presentation.wavaudios 属性获取演示文稿中嵌入的音频为集合。
- 通过 presentation.slides[] 属性获取包含要替换音频的幻灯片。
- 遍历幻灯片中的每个形状,并检查一个形状是否为 iaudio 类的实例。如果是,则使用 wavaudiocollection.append() 方法将新音频添加到音频集合中,并通过 iaudio.data 属性替换原音频。
- 使用 presentation.savetofile() 方法保存演示文稿。
- python
from spire.presentation import *
from spire.presentation.common import *
# 创建 presentation 类的对象
pres = presentation()
# 加载一个 powerpoint 演示文稿文件
pres.loadfromfile("示例.pptx")
# 从演示文稿中获取音频
audios = pres.wavaudios
# 获取包含音频的幻灯片
slide = pres.slides[0]
# 遍历幻灯片中的每个形状
for shape in slide.shapes:
# 检查形状是否为音频形状
if isinstance(shape, iaudio):
audio = shape if isinstance(shape, iaudio) else none
# 加载音频文件
stream = stream("wave2.wav")
# 替换形状中的音频
audiodata = audios.append(stream)
audio.data = audiodata
# 保存演示文稿
pres.savetofile("output/替换音频.pptx", fileformat.pptx2016)
pres.dispose()
申请临时 license
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用javascript。获取有效期 30 天的临时许可证。