首页 > 解决方案 > Python如何使用docx在MS Word中用超链接替换单词?

问题描述

我想用超链接替换段落中的一个单词。我看到了可以用超链接创建一个新单词的函数,但这不是我想要的。例如我想做这样的事情:

mydoc = docx.Document()
text = "a stackoverflow question"
parag = mydoc.add_paragraph(text)
parag.add_hyperlink(the word that will be changed to the hyperlink (in that case
                    that can be "stackoverflow"), link('https://stackoverflow.com'))

使用此add_hyperlink函数,stackoverflow单词必须是超链接。有没有办法做到这一点?

标签: pythonms-worddocxpython-docx

解决方案


通过运行构建段落,例如:

document = docx.Document()
paragraph = mydoc.add_paragraph()
paragraph.add_run("a ")
paragraph.add_hyperlink("stackoverflow", link('https://stackoverflow.com'))
paragraph.add_run("question")

超链接必须作为自己的运行出现,因此如果要将其放在句子的中间,则需要在前后单独运行。


推荐阅读