キャンバスに表示する必要のある画像/キャプションデータを格納するxmlファイルを解析しています。ただし、ファイルにエンティティが含まれている場合があり、テキストをキャンバスに描画すると、フラットテキストとして解釈されます。©
キャンバスに©として表示するにはどうすればよいですか?これも可能ですか、それとも誰かが良い回避策を知っていますか?
3119 次
3 に答える
5
HTML エンティティを同等の Unicode 文字に置き換えることができます。
例えば
var x = 'This is © 2010';
x = x.replace( /©/, '\u00A9' ); // x is now 'This is © 2010'
于 2010-06-10T16:31:51.757 に答える
1
また、すべての HTML エンティティが 16 進値を持つことに注意してください。
たとえば、℃の Hex 値が「2103」の場合、「\u2103」に変換してキャンバス コードに追加できます。
<canvas id='my-canvas'></canvas>
<script>
var c = document.getElementById("my-canvas");
var ctx = c.getContext("2d");
ctx.strokeText("170 \u2103", 25, 50);
ctx.stroke();
</script>
于 2018-04-26T13:42:08.627 に答える