0

このWeb ページには、必要な文字 (大文字の L の上にドット) に関するデータがあります。ページの半分くらいです。

しかし、それをCDATAに変換する方法がわかりません。たとえば、X 上のバーに対して私が行っていることは次のとおりです。

<xsl:text disable-output-escaping="yes"><![CDATA[&#772;]]></xsl:text>

上にドットがある L に対して、どの CDATA を実行しますか?

更新、この CDATA テンプレートは私の主要なソリューションです。

<xsl:text disable-output-escaping="yes">L<![CDATA[&#775;]]></xsl:text>

ブラウザでうまくテストされました。

4

2 に答える 2

2

CDATA セクションを導入する必要はありません。または、出力エスケープを無効にすることで、導入された問題を回避する必要があります。不必要に複雑です。入力した内容は、次のように解析されると、同一の情報セットになるはずです。

<xsl:text>L̇</xsl:text>

そうでない場合は、スタックに Unicode の問題がより深刻に存在します。たとえば、UTF-8 で出力を提供していない (この場合、最初にその問題を修正する必要があります)、または Unicode をサポートしていないテキスト エディターを使用している (その場合は、数字参照を使用するL&#775;L&#x0307;、必要に応じて使用できます)。

ドットが予期しない場所に表示される場合、これはブラウザー/エディターのフォント レンダリングの問題であり、XML とは関係ありません。マクロン (U+0304, 772) やドット アバブ (U+0307, 775) などの合成ダイアクリティカルを、X-マクロンや L-ドットなど、現代の言語には見られない珍しい組み合わせに使用すると、使用しているフォントが、その組み合わせに対して適切に構成されたグリフを持っている可能性は非常に低いです。

代わりに、2 つの形状の大まかなオーバーレイが得られます。それらがまったく並ぶかどうかは運次第です。最悪の場合、フォントには結合文字のグリフがまったくありません。この場合、表示エンジンは通常、完全に別のフォントにフォールバックするため、結果がきれいになる可能性はさらに低くなります。

一般に、一般的なフォント/Web ブラウザーは、実際の言語で使用される一般的な分音記号を組み合わせることはあまり得意ではありません。この機能を任意の組み合わせで使用しようとすると、Z̛al͏go̵t̸e͝xډt̷ が乱雑になる可能性が最も高くなります。

于 2013-02-03T01:38:37.763 に答える
0

CDATA はまったく必要ありません。あなたはただ使うことができます

この例では、CDATA を使用して、XSL エンジンによって文字参照が に変換されるのを止めています。つまり、の代わりにそれ&#772;が出力されます

ただし、どこでも raw を使用できるため、その必要はありません

<xsl:text disable-output-escaping="yes">L̇</xsl:text>
于 2013-02-02T14:01:24.987 に答える