Python-PPTX:添加音符幻灯片导致PowerPoint 2013崩溃



我有一个脚本,其中包含类似于下面剥离代码的内容。目的是在普通幻灯片下方添加音符幻灯片(和文本)。它可以在安装PowerPoint 2007的系统上工作得很好。

from pptx import Presentation
prs = Presentation()
title_slide_layout = prs.slide_layouts[0]
blank_slide_layout = prs.slide_layouts[6]
title_slide = prs.slides.add_slide(title_slide_layout)
title = title_slide.shapes.title
title.text = "Title"
blank_slide = prs.slides.add_slide(blank_slide_layout)
notes_slide = blank_slide.notes_slide
notes_slide.notes_text_frame.text = "foo"
prs.save('example.pptx')

不幸的是,当使用PowerPoint 2013(使用Windows 7)时:该代码在没有错误的情况下运行,但是当我尝试打开PowerPoint演示文稿时,我会收到通知" Microsoft PowerPoint已停止工作"。当删除上述代码中的两个Notes_Slide行时,该错误已修复(即,我的代码中没有其他原因引起了问题)。

任何人都可以提供有关导致此造成的原因的启蒙运动?

好吧,我对自己的问题有一个解决方案,但是我对工作不太满意。

事实证明,对于PowerPoint 2013,如果要在一个或多个幻灯片中添加音符幻灯片,则必须添加音符幻灯片(没有文本)到 everther 其他幻灯片,否则PowerPoint2013将崩溃。

from pptx import Presentation
prs = Presentation()
title_slide_layout = prs.slide_layouts[0]
blank_slide_layout = prs.slide_layouts[6]
title_slide = prs.slides.add_slide(title_slide_layout)
title = title_slide.shapes.title
title.text = "Title"
notes_slide = title_slide.notes_slide #The only new line of code
blank_slide = prs.slides.add_slide(blank_slide_layout)
notes_slide = blank_slide.notes_slide
notes_slide.notes_text_frame.text = "foo"
prs.save('example.pptx')

有人有不同的经历吗?

最新更新