2011-01-12 17 views
7

私は理由はわかりませんが、fillTextで "degree"シンボル(°)を使用できません。私はすべてを試しました:ALT + 248、ALT + 0176、&度、ウェブからのコピー/貼り付け...私が得るものは何もない、または&度です。コードやHTMLの同じページでうまく動作します。キャンバスではありません。HTML5キャンバス:度記号

誰でもこの問題を解決する方法を知っていますか?ありがとう。

答えて

10

これは私のために、リテラルのUnicode文字をテキストに使用して動作します。ここでの例を参照してください: http://jsfiddle.net/W5d7D/

は、あなたのソースファイルです:使用してJavaScriptのソースを記述し

UTF-8として保存
  1. 、およびUnicode文字セットを使用するものとして説明
  2. 、および
  3. Unicode文字セット?

HTMLとCanvasで動作するUnicodeを示すスタンドアロンの例です。あなたはjavascriptやHTMLエディタサポートUnicode文字を確認してくださいhttp://phrogz.net/tmp/canvas_unicode_degree_symbol.html

<!DOCTYPE html> 
<html><head> 
    <meta charset="utf-8"> 
    <title>Unicode Degree Symbol on HTML5 Canvas</title> 
    <style type="text/css" media="screen"> 
    body { margin:4em; background:#eee; text-align:center } 
    canvas { background:#fff; border:1px solid #ccc; display:block; margin:2em auto } 
    </style> 
</head><body> 
    <canvas></canvas> 
    <p>Unicode characters 'just work' with a proper setup, e.g. "212° Fahrenheit"</p> 
    <script type="text/javascript" charset="utf-8"> 
    var c = document.getElementsByTagName('canvas')[0]; 
    c.width = c.height = 400; 

    var ctx = c.getContext('2d'); 
    ctx.font = "bold 24px sans-serif"; 
    ctx.fillText("212° Fahrenheit", 100, 100); 
    </script> 
</body></html> 
0

でこのオンラインを見ることができます。 私はVirsal Studio 2008を使用していますが、問題があります。 私は、あなたのエディタがchrome inspectを伴うビュースクリプトによって正しいUnicode文字をインポートするかどうか調べることができます。