如何在HTML5中使用fillText()绘制文本?


Canvas 2D API 的 CanvasRenderingContext2D 方法 fillText() 在给定的坐标处绘制文本字符串,同时使用当前 fillStyle 填充字符。

在画布上,填充文本使用 fillText() 方法绘制。默认情况下,文本为黑色。

语法

以下是HTML5中填充文本的语法:

context.fillText(text, x, y, maxWidth);

其中:

  • X − 文本在x轴上开始绘制的点(以像素为单位)。

  • Y − 基线在y轴上的坐标(以像素为单位),文本从此处开始渲染。

  • text − 包含应在上下文中渲染的文本字符串的字符串。

  • maxwidth − 文本在其最宽点可以具有的最大像素数。如果未指定,则对文本宽度没有限制。

为了更好地理解,让我们逐一深入研究以下示例。

使用 fillText() 方法

画布使用 fillText() 方法填充绘制的文本。文本始终以黑色显示。

示例

在下面的示例中,我们使用 fillText() 在画布上绘制所需字体的文本。

<!DOCTYPE html> <html> <body> <canvas id="canvas" height="400" width="500"></canvas> <script> const canvas = document.getElementById('canvas'); if (canvas.getContext) { const ctx = canvas.getContext('2d'); ctx.fillStyle = 'green'; ctx.font = '60px cursive'; ctx.fillText('Hello, World!', 100, 200); } </script> </body> </html>

执行上述脚本后,fillText() 被激活,这使得它使用脚本中使用的字体在画布上绘制文本“hello,world!”。

添加线性渐变() 函数

背景图像使用线性渐变() 方法设置为线性渐变。您需要定义至少两个颜色停止点才能创建线性渐变。

示例

考虑以下示例,我们使用 fillText() 以及线性渐变来使文本以彩色方式绘制。

<!DOCTYPE html> <html> <body> <canvas id="myCanvas" width="300" height="150"></canvas> <script> var c = document.getElementById("myCanvas"); var ctx = c.getContext("2d"); 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("TUTORIALS POINT!", 10, 90); </script> </body> </html>

脚本执行后,线性渐变被触发,使文本“tutorialspoint!”在画布上绘制。

更新于:2022年10月12日

426 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.