本节书摘来自异步社区《HTML5游戏编程核心技术与实战》一书中的第2章,第2.5节,作者: 向峰 更多章节内容可以访问云栖社区“异步社区”公众号查看。
2.5 绘制文字
canvas中除了可以绘制图形图像外,还可以绘制文字,同时也可以指定文字的字体、大小、对齐方式以及填充文字的纹理。
- fillText (text, x, y, [maxWidth]):在canvas上填充文字,text表示需要绘制的文字,x、y分别表示绘制在canvas上的横、纵坐标,最后一个参数可选,表示显示文字的最大宽度,防止文字显示溢出。
- strokeText (text, x, y, [maxWidth]):在canvas上描边文字,参数的意义同fillText。
相关的文字的一些属性如下所示。 - font:字体属性,可以采用类似CSS中font定义的写法,比如bold 40px sans-serif表示文字是粗体,大小是40像素,字体是sans-serif。
- textAlign:对齐方式,常见的值如表2-2所示。
https://yqfile.alicdn.com/8f6d90904d0a52d04cb494489ca1950c78d2be6d.png" >
- textBaseline:文字对齐基线,常见的值如表2-3所示。
比如,以下代码显示了Welcome To HTML5的文字:
<body> <h2>显示文字</h2> <canvas id="can" width="400" height="300" /> </body> <script> function $(id) { return document.getElementById(id); } //获取canvas的上下文 var ctx = $("can").getContext("2d"); ctx.strokeStyle = "red"; ctx.font = "bold 40px sans-serif"; ctx.strokeText("Welcome To HTML5", 10, 50); </script>
代码中通过strokeStyle设置文字的颜色为红色,然后通过font设置文字的字体,最后通过strokeText描绘出文字的边框。