我想从docx文件中提取所有粗体文本,无法使用python-docx,我将文件保存为xml,有没有办法检测粗体文本,不是 因为我没有在文件中的任何地方看到它
这句话以粗体显示:
<cell ptr="0x7f84240911d0" id="16" symbol="9SwCellFrm" upper="15 lower="17"><infos><bounds left="1502" top="2320" width="10517"
height="1662"/>
</infos><txt ptr="0x7f842408e460" id="17"
symbol="8SwTxtFrm" next="18" upper="16" txtNodeIndex="70"><infos><bounds left="1610" top="2320" width="10301" height="322"/></infos>
Some text <Special nLength="0" nType="POR_MARGIN" rText="" nWidth="3534"/>
<Text nLength="49" nType="POR_TXT" nHeight="322" nWidth="6768"/><Special nLength="0" nType="POR_MARGIN" rText=""/>
<LineBreak nWidth="10302"/>
<Finish/></txt>
答案 0 :(得分:2)
&#34;最初是DOCX&#34;可能会也可能不会忠实地表示粗体字符样式,因为新的XML格式可能不支持粗体,或者转换可能不会保留属性。
如果您将文档保存为 Word XML文档(推荐)或Word 2003 XML文档,甚至 OpenDoc文本,则生成的XML将保留气魄。 (如何从DOCX文件中获取已发布的XML完全不明显。您的XML不是这些格式。)
例如,&#34; Word XML Document&#34;是一个Flat Open Packaging Convention(FOPC)Office Open XML(OOXML)文档,其中(基本级别)的粗体表示如下:
<w:r>
<w:rPr>
<w:b />
</w:rPr>
<w:t>This text is bold</w:t>
</w:r>
请注意,如果将XML表示为样式的一部分而不是直接作为运行属性,则确定粗体会变得更复杂。