使用python-pptx

时间:2018-06-21 07:32:16

标签: python presentation python-pptx

我是python-pptx的新手。但是我熟悉它的基本工作原理。我进行了很多搜索,但找不到在所有幻灯片中通过另一文本更改特定文本的方法。该文本可以在幻灯片的任何text_frame中。像ppt中的所有幻灯片都具有'java'关键字一样,我想在幻灯片中使用python pptx通过'python'对其进行更改。

for slide in ppt.slides:
    if slide.has_text_frame:
        #do something with text frames

1 个答案:

答案 0 :(得分:1)

类似的事情应该会有所帮助,您需要迭代每个shape中的slide.shapes个对象,并检查是否有TextFrame和关键字是否存在:

def replace_text_by_keyword(ppt, keyword, replacement):
    for slide in ppt.slides:
        for shp in slide.shapes:
            if shp.has_text_frame and keyword in shp.text:
                thisText = shp.text.replace(keyword, replacement)
                shp.text = thisText

此示例当然只是一个简单的str.replace,如果您有更复杂的替换/文本更新算法,则可以根据需要进行修改。