查找特殊字符的XML CDATA(大写L,上面带点)
这有一些关于我需要的字符的数据(大写字母L,上面有点)。大约在这一页的一半 但我不知道如何将其转换为CDATA。例如,这里是我为X上的一个条所做的查找特殊字符的XML CDATA(大写L,上面带点),xml,unicode,cdata,Xml,Unicode,Cdata,这有一些关于我需要的字符的数据(大写字母L,上面有点)。大约在这一页的一半 但我不知道如何将其转换为CDATA。例如,这里是我为X上的一个条所做的 <xsl:text disable-output-escaping="yes"><![CDATA[̄]]></xsl:text> 如果上面有一个点,我会为L做什么CDATA 更新,此CDATA模板是我的主要解决方案: <xsl:text disable-output-escaping=
<xsl:text disable-output-escaping="yes"><![CDATA[̄]]></xsl:text>
如果上面有一个点,我会为L做什么CDATA
更新,此CDATA模板是我的主要解决方案:
<xsl:text disable-output-escaping="yes">L<![CDATA[̇]]></xsl:text>
L
它在浏览器中测试得很好。您根本不需要CDATA。您只需使用
L̇
在这种情况下,CDATA用于阻止XSL引擎将字符引用转换为L̇
。i、 e.以便和#772代码>被输出,而不是L
不过,没有必要这样做,因为您可以在任何地方使用原始的L̇
<xsl:text disable-output-escaping="yes">L̇</xsl:text>
L̇
您不需要引入CDATA节,也不需要通过禁用输出转义来解决它带来的问题。这是不必要的复杂。您输入的内容在解析为以下内容时应产生相同的信息集:
<xsl:text>L̇</xsl:text>
L̇
如果没有,那么堆栈中的Unicode问题就更严重了,例如不使用UTF-8提供输出(在这种情况下,您应该首先解决这个问题),或者使用不支持Unicode的文本编辑器(在这种情况下,您可以使用数字字符引用L̇;
或L̇;
,如果您愿意的话)
如果您看到点出现在一个意外的位置,这是浏览器/编辑器中的字体呈现问题,与XML无关。当你使用一个组合变音符号,比如macron(U+0304772)或上面的点(U+030775)来表示在任何现代语言中都没有出现的不寻常的组合,比如X-macron和L-dot,那么你使用的字体不太可能有一个很好的组合字形
取而代之的是,你会得到一个由两个形状组成的粗糙覆盖层,而不管它们是否排成一行都是运气好。最糟糕的情况是,字体根本没有用于组合字符的字形,在这种情况下,显示引擎通常会完全退回到不同的字体,这使得结果更不可能是漂亮的
一般来说,普通字体/网络浏览器在组合真实语言使用的普通变音符号方面也不是很好;尝试将此功能用于任意组合最有可能导致Z̛al͏go̸t̸e͝x҉t̷混乱。谢谢。那个圆点偏了。我在谷歌上搜索了更多,发现这个L..775在上一封信上加了点。我想。