写“Hello world!” 和“Big smile!” (带渐变)在画布上,使用 fillText()
:
<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">您的浏览器不支持 HTML5 canvas 标签。</canvas> <script> var c = document.getElementById("myCanvas"); var ctx = c.getContext("2d"); ctx.font = "20px Georgia"; ctx.fillText("Hello World!", 10, 50); ctx.font = "30px Verdana"; // 创建渐变 var gradient = ctx.createLinearGradient(0, 0, c.width, 0); gradient.addColorStop("0", "magenta"); gradient.addColorStop("0.5", "blue"); gradient.addColorStop("1.0", "red"); // 填充渐变 ctx.fillStyle = gradient; ctx.fillText("Big smile!", 10, 90); </script>
JavaScript:
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "20px Georgia";
ctx.fillText("Hello World!", 10, 50);
ctx.font = "30px Verdana";
// 创建渐变
var gradient = ctx.createLinearGradient(0, 0, c.width, 0);
gradient.addColorStop("0"," magenta");
gradient.addColorStop("0.5", "blue");
gradient.addColorStop("1.0", "red");
// 填充渐变
ctx.fillStyle = gradient;
ctx.fillText("Big smile!", 10, 90);
表中的数字指定了完全支持该属性的第一个浏览器版本。
方法 Method | |||||
---|---|---|---|---|---|
fillText() | Yes | 9.0 | Yes | Yes | Yes |
注意: Safari 5.1 及更早版本不支持 maxWidth 参数。
fillText()
方法在画布上绘制填充文本。 文本的默认颜色是黑色。
提示: 使用 font 属性指定字体和字体大小,并使用 fillStyle 属性以另一种颜色/渐变呈现文本。
JavaScript 语法: | context.fillText(text,x,y,maxWidth); |
---|
参数 | 描述 Description |
---|---|
text | 指定将在画布上写入的文本 |
x | 开始绘制文本的 x 坐标(相对于画布) |
y | y 坐标开始绘制文本的位置(相对于画布) |
maxWidth | 选修的。 文本的最大允许宽度,以像素为单位 |