gpt4 book ai didi

python - 使用 ResampleMediaTask 的 Powerpoint 视频导出进度

转载 作者:太空狗 更新时间:2023-10-29 21:58:39 27 4
gpt4 key购买 nike

我正在尝试使用进度指示将 .pptx 文件转换为 .mp4 视频文件。我将 Python 2.7.6 与 win32com.client 模块一起使用,以便在 Microsoft Powerpoint 2013 中自动执行一些操作。

到目前为止,这是我的代码:

import win32com.client

powerpoint = win32com.client.Dispatch("Powerpoint.Application")
presentation = powerpoint.Presentations.Open(FileName='myFile.pptx',
WithWindow=False)

try:
# May need a few other parameters as well
presentation.CreateVideo('out.wmv')
except:
raise SystemExit

我的问题是我没有得到导出到视频进度的指示。我知道此信息可用,因为从应用程序内导出到视频时,Powerpoint 本身会显示一个准确的进度条。

到目前为止,我设法检索到的唯一信息是轮询 CreateVideoStatus 属性,它只告诉我转换是否结束。

while presentation.CreateVideoStatus == 1:
time.sleep(1)

然而,根据这篇帖子Powerpoint 2013 - Progress for export to video , 用户 Steve Rindsberg建议我们应该使用 ResampleMediaTasks 对象及其 PercentComplete() 方法来获取进度。

关于如何在 Python 中实现这一点有什么想法吗?

最佳答案

要使用 ResampleMediaTasks,您需要在 Python 中创建它的 COM 对象,并使用它来获取对话期间的进度百分比。一个完整的例子: http://bit.ly/1iUbZKO

如您在第 8173 行中所见,它转换 PPT 文件并使用 ResampleMediaTasks 来获取它的进度。您可以使用该源项目中的整个 openlp 包或使用它的一部分。要下载整个项目,您需要安装 BZR 客户端。

关于python - 使用 ResampleMediaTask 的 Powerpoint 视频导出进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21331818/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com