基本上,我们正在以旧方式更改 InDesign 项目的数据源 XML。我们不想更改 InDesign,因此我必须从新数据源(通过 Mule ESB 的 SOAP Web 服务)调整新 XML。我使用 groovy 来转换所说的 XML,直到我遇到这个问题。InDesign 中的旧 XML 仅适用于在每个文本后添加的特殊字符:

.
这是一个工作 XML 的示例:
<?xml version='1.0' encoding='UTF-8'?>
<w_import_saisie_web><w_evenement><w_titre>My Title
</w_titre></w_evenement>
</w_import_saisie_web>
我无法在 Groovy 脚本中添加特殊字符:这是我迄今为止尝试过的:
root = new XmlSlurper(false,false).parseText(payload)
def xml = new StringWriter().with { w -> new groovy.xml.MarkupBuilder(w).with {
mkp.xmlDeclaration(version: "1.0", encoding: "utf-8")
"w_import_saisie_web"() {
"w_titre"( root.title + "
")
}
}
}
w.toString()
}
我也试过:
"w_titre"( root.title + '
')
"w_titre"( root.title + '&'+'#xA;')
"w_titre"( root.title + "&"+"#xA;")
ETC
我可以毫无问题地打印这个
<?xml version='1.0' encoding='UTF-8'?>
<w_import_saisie_web><w_evenement><w_titre>My Title</w_titre></w_evenement>
</w_import_saisie_web>
但我似乎不能这样做:
<?xml version='1.0' encoding='UTF-8'?>
<w_import_saisie_web><w_evenement><w_titre>My Title
</w_titre></w_evenement>
</w_import_saisie_web>
有人可以帮我吗?