我有XSLT文件,我想在Visual Studio(2010)中编辑。该模板用于将输入数据-XML转换为OpenXML格式(MS Word文档)。 Visual Studio无法正确格式化(拆分为多行和缩进)。 screenshoot上的选定行(以<wx:sect>
标记开头)只有一英里长,不受Edit > Format Document (Format Section)
的影响。这一行内部是Word文档的完整描述。
我需要做什么(安装可能),所以VS可以格式化这样的文件?
答案 0 :(得分:1)
当保存到2003 WordML时,Word会将xml:space="preserve"
放在文档的根节点中以弥补其设计糟糕的XML结构,从而使代码免于漂亮打印在编辑器中
如果删除它,格式化文档将起作用。
Word主要使用它来保留w:t
元素中的空格。
例如,如果您有以下WordML代码:
<w:p>
<w:r>
<w:t>Test </w:t>
</w:r>
<w:r>
<w:t>test</w:t>
</w:r>
</w:p>
除非保留空间属性存在,否则Word将忽略第一个w:t
中的空格并写入 Testtest 。
最好删除并使用XSLT添加它:
<xsl:attribute name="xml:space">preserve</xsl:attribute>