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. P>
donc j'ai une zone de texte avec le texte: p>
Nom 1 $$ Code> LI>
-
$$ Nom 2 $$ Code> LI>
ul>
Et je veux changer le $$ nom1 $$ code> à Tom code>. P>
Comment puis-je atteindre cela? p>
3 Réponses :
Un objet TextFrame défini dans Python-PPTX aide en manipulation du contenu d'une zone de texte. Vous pouvez faire quelque chose comme:
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')
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 p>