HTML5 Canvas: Символ степени - PullRequest
8 голосов
/ 12 января 2011

Я не знаю почему, но я не могу использовать символ "градус" (& deg;) с fillText. Я перепробовал все: ALT + 248, ALT + 0176, & deg ;, копирование / вставка из Интернета ... Все, что я получаю, это ничего или & deg; Прекрасно работает в коде или на той же странице в HTML - только не в canvas.

Кто-нибудь знает, как это исправить? Спасибо.

Ответы [ 2 ]

10 голосов
/ 12 января 2011

Это работает для меня, используя буквальный символ Unicode в тексте.Смотрите пример здесь: http://jsfiddle.net/W5d7D/

Ваш исходный файл:

  1. сохранен как UTF-8, а
  2. описан как использование набора символов Unicode, и
  3. описание источника JavaScript с использованием набора символов Unicode?

Вот отдельный пример, демонстрирующий работу Unicode в HTML и на Canvas.Вы можете увидеть это онлайн на 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 голосов
/ 01 июля 2015

Убедитесь, что ваш javascript или html редактор поддерживает символы Unicode.Я использую Virsal Studio 2008, это проблема.Я могу выяснить, импортирует ли ваш редактор правильный код Unicode при просмотре скрипта с проверкой Chrome.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...