在HTML5中使用画布编写文本

use*_*685 1 html5 canvas character-encoding html5-canvas

我使用以下代码使用canvas编写文本.

<html>
 <head>
  <script type="text/javascript">
    function convert(){
      draw(document.getElementById('canvas').getContext('2d'));
    }

    function draw(txt){
      var fillText="Some text";
      txt.textBaseline="top";
      txt.font="Arial";
      txt.fillStyle="red";
      txt.fillText(fillText,20,20);
    }

  </script>
</head>
  <body onload="convert()">
    <canvas id="canvas"></canvas>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我的问题是:是否有可能用其他语言写文字?

Var*_*ant 5

只要您使用的字体支持其他语言的字符集,就不会有任何问题.

如果字体不是常用字体(而日语/阿拉伯语/希伯来语字体不是),则应使用@font-face提供字体文件.

Yuo可以阅读这个帖子:使用@ font-face将文本绘制到<canvas>在第一次用于常见问题时不起作用.