我想在 MS Word 文本中将样式设置为更正的单词。由于无法在运行中更改文本样式,因此我想在现有段落中插入具有新样式的新运行...
for p in document.paragraphs:
for run in p.runs:
if 'text' in run.text:
new_run= Run()
new_run.text='some new text'
# insert this run into paragraph
# smth like:
p.insert(new_run)
怎么做?
p.add_run() 将 run 添加到段落末尾,不是吗?
更新
最好的办法是能够克隆运行(并在特定运行后插入它)。通过这种方式,我们可以在新的/克隆的版本中重现原始运行的样式属性。
更新 2
我可以管理那个插入代码:
if 'text' in run.text:
new_run_element = CT_R() #._new()
run._element.addnext(new_run_element)
new_run = Run(new_run_element, run._parent)
...
但在那之后:
该段运行号留相同:len(p.runs)
当我将该文档保存在文件中时,MS Word 无法打开它:
相关分类