XML <w:r>元素,即在docx文档处理中常说的run元素,代表文档中的一段“运行”(run),是具有共同属性(如字体、颜色等)的一段文本。
在查看word xml文档时,经常看到在文档中属性相同,理应是同一个run的文字在xml中被分割在不同的<w:r>标签中,这是因为之前曾在word中对这部分文字进行修改,如新增几个字、更改颜色等,虽然在word中看起来是同一个run,其实xml中这部分会标记<w:rw:rsidR>或者<w:rw:rsidRPr>之后放在新的<w:r>标签里。
<w:rw:rsidR>和<w:rw:rsidRPr>是与修订(revisions)或跟踪更改(tracked changes)相关的元素属性。
<w:rw:rsidR>: 通常与文档的修订内容相关联。它标识了进行特定修订(如插入、删除或格式更改)的用户。每个用户都有一个唯一的rsidR值,这样Word就可以跟踪谁做了哪些更改。<w:rw:rsidRPr>: 与修订的属性或格式更改相关联。当用户更改文档的格式(如字体、颜色、大小等)时,这个属性用于标识进行这些格式更改的用户。它允许Word在“审阅”模式下显示哪些格式更改是由哪个用户进行的。
为了方便后续对xml的处理,这里先规整一下格式,合并相邻的具有相同 rsidR/rsidRPr 属性的 XML <w:r> 元素:
【
注意:这段脚本在实际测试中还是存在很多问题的( ´•̥̥̥ω•̥̥̥` )这里仅作思路演示
之后准备好好研究一下python-docx的源码,看看人家是怎么处理的ε≡ヘ( ´∀`)ノ
】
im

博客介绍了XML <w:r>元素,它代表docx文档中具有共同属性的一段文本。因在Word中修改文字,相同属性文字在xml中可能被分割。还提及与修订相关的元素属性,为方便处理xml,要合并相邻相同属性的<w:r>元素,给出Python处理思路。


被折叠的 条评论
为什么被折叠?



