0
votes

Comment puis-je remplacer le texte dans un PPP avec Python Pptx?

Je veux remplacer le texte dans une zone de texte dans PowerPoint avec Python-PPTX. Tout ce que j'ai trouvé en ligne n'a pas fonctionné pour moi et la documentation n'est pas aussi utile pour moi.

donc j'ai une zone de texte avec le texte:

  • Nom 1 $$
  • $$ Nom 2 $$

    Et je veux changer le $$ nom1 $$ à Tom .

    Comment puis-je atteindre cela?


0 commentaires

3 Réponses :


0
votes

Un objet TextFrame défini dans Python-PPTX aide en manipulation du contenu d'une zone de texte. Vous pouvez faire quelque chose comme: xxx


0 commentaires

0
votes

Essayez ceci:

import pptx

input_pptx = "Input File Path"
prs = pptx.Presentation((input_pptx))
testString = "$$Name1 $$" 
replaceString = 'Tom'

title_slide_layout = prs.slide_layouts[0]
slide = prs.slides.add_slide(title_slide_layout)

for slide in prs.slides:
    for shape in slide.shapes:
        if shape.has_text_frame:
            if(shape.text.find(testString))!=-1:
                shape.text = shape.text.replace(testString, replaceString)

        if not shape.has_table:
            continue    

prs.save('C:/test.pptx')


0 commentaires

0
votes

Ok merci. Je viens de découvrir que mon exemple PowerPoint était totalement fâché. Non, tout ne fonctionne pas bien avec un nouveau PowerPoint recouvert


0 commentaires