xml - 使用 XSLT 转换在 WordProcessingML 中保留换行符和空格

我正在使用 WordprocessingML 以编程方式创建 word 文档,但找不到在我的文本 (w:t) block 中保留换行符的方法。 cannot preserve space between runs 有答案通过以下方式寻址空间:

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

但是,我正在使用一个 JavaScript 文件创建 docx 文件的目录结构并对源 xml 文件运行 xslt 转换以生成 word 使用的主要 document.xml 文件。我不确定我是否具有与上述代码相对应的实际低级 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 标记,如制表符或段落。

最佳答案

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

https://stackoverflow.com/questions/23551978/

相关文章:

python - 具有多个 worker 的 gunicorn 中的变量访问

macos - 通过 XPC 与应用程序通信并启动以 root 身份运行的守护进程

.net - 每个文件只执行一个类

sql - 在 NLTK 中将英语转换为 SQL

ios - 解码Code128条码?

r - 警告 : replacing previous import ‘head’ when loa

ruby-on-rails - Rails - routes.rb - 滚动到根页面的 anchor

sorting - lucene.net,文档提升不起作用

jquery - Select2 无限滚动组

php - Laravel:模型内验证。多重验证规则