OpenXml for Word - 空格“保留”指令导致换行后的前导空格

时间:2015-08-14 10:17:22

标签: ms-word openxml

对于Text的uint8_t i = getBcd(); return (i >> 4 & 0x7) * 10 + (i & 0xf); 指令,我对Word OpenXml元素RunBreakText的工作方式感到困惑。

如果我有一组元素,例如:

space="preserve"

然后Word显示如下 - 注意Surgical之前的前导空格:

 <w:p>
    <w:r>
       <w:t xml:space="preserve">Medical Admissions are counted where blah</w:t>
    </w:r>
    <w:r>
        <w:br />
        <w:t xml:space="preserve">Surgical Admissions are counted where blah</w:t>
    </w:r>
</w:p>

如果我删除 Medical Admissions are counted where the blah blah blah</w:t> Surgical Admissions are counted where the blah</w:t> 属性,那么除非space="preserve"在尾随空格中结束,否则一切都很好。然后我需要保留尾随空格,然后重新出现不需要的前导空格。

两个Run元素都有Run,那么为什么Word space="preserve"的第一个Run上显示空格,但确实Paragraph之后显示空格,即使没有要保留的前导空格?

我已尝试将Break元素放入其自己的Break元素中 - 结果相同。

1 个答案:

答案 0 :(得分:0)

您可以使用Unicode字符U + 2008 PUNCTUATION SPACE而不是通常的U + 0020 SPACE。这将创建一个在运行中的文本元素中保留的中断空间。