3

我正在使用 WordprocessingML 以编程方式创建 Word 文档,但找不到在我的文本 (w:t) 块中保留换行符的方法。有一个答案是无法保留运行之间的空间,通过以下方式解决空间问题:

t = new Text()
{
    Text = "your text with spaces ",
    Space = SpaceProcessingModeValues.Preserve
};

但是,我正在使用创建 docx 文件的目录结构并在源 xml 文件上运行 xslt 转换以生成 word 使用的主 document.xml 文件的 JavaScript 文件。我不确定我是否具有与上述代码相对应的实际低级 WordprocessingML 属性。我努力了:

<w:t xml:space="preserve">
     Doesn't work.</w:t>

<w:t w:space="preserve"> 
      Also, no joy.</w:t>

可以这样做,还是需要多个段落 (w:p) 标签?为了便于使用,我希望源 xml 文件的编辑器只将所需的空格放在单个文本标记中,而不是让他们手动添加额外的 xml 标记,如选项卡或段落。

4

2 回答 2

0

如果要在段落内添加换行符,则需要使用w:br元素,您需要将其插入到 run ( w:r) 元素中。例如,以下标记显示FooBar它们之间有一个空行。

<w:r>
  <w:t>Foo</w:t>
  <w:br/>
  <w:br/>
  <w:t>Bar</w:t>
</w:r>
于 2014-05-09T20:22:40.020 回答
0

正确的属性是 xml:space="preserve" 可以通过检查正确构建的测试 docx 文件找到,但它不允许换行/更改段落(它将这些视为单个空格)。制表符和空格在 w:t 块内工作,但遗憾的是,我必须在源 xml 中使用明确的段落标记。答案是,它无法完成(除非在后台涉及不值得的字符串处理)。

于 2014-05-09T18:01:34.260 回答