Я новичок в python-pptx. Но я знаком с его основной работой. Я много искал, но не смог найти способ изменить определенный текст другим текстом во всех слайдах. Этот текст может быть в любом текстовом кадре слайда. как и все слайды в ppt имеют ключевое слово "java", я хочу изменить его на "python", используя python pptx в слайдах.
for slide in ppt.slides:
if slide.has_text_frame:
#do something with text frames
Что-то вроде этого должно помочь, вам нужно будет итерации объектов 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
если у вас есть более сложный алгоритм замены/обновления текста, вы можете изменить его по мере необходимости.