特殊文字を使用する文字列から正しい svg を書き込もうとしています。svg ドキュメントに UTF-8 エンコーディングを使用しています。javascript に取り組んでいます。文字列は次のようになります。
<glyph unicode="¥" horiz-adv-x="819" />
DOMParser api を使用して xml を記述しているときに、¥ を間違った xml である ¥ に変換し、ブラウザーが XML 解析エラーをスローします。
SVG document に変換したい完全なテキストを次に示します。
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata></metadata>
<defs>
<font id="DearestRegular" horiz-adv-x="2048" >
<font-face units-per-em="2048" ascent="1638" descent="-410" />
<glyph unicode="¥" horiz-adv-x="819" />
</font>
</defs>
</svg>
DOMParser を使用すると、次のような出力が得られます。
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata></metadata>
<defs>
<font id="DearestRegular" horiz-adv-x="2048" >
<font-face units-per-em="2048" ascent="1638" descent="-410" />
<glyph unicode="¥" horiz-adv-x="819" />
</font>
</defs>
</svg>
これにより、ブラウザで XML 解析エラーがスローされます。