Canvas怎样修改线条的宽度、颜色和形状?

yumo66623小时前技术文章2

在Canvas中,线的默认颜色为黑色,宽度为lpx,但我们可以使用相关属性为线添加不同的样式。下面我们将从宽度、描边颜色、端点形状3方面详细讲解线条样式的设置方法。

1.设置线条宽度

使用lineWidth属性可以定义线的宽度,该属性的取值为数值(不带单位),以像素为计量。设置线的宽度的示例代码如下:

context.lineNidth='10';

上述代码中设置了线的宽度为10。

2.设置描边颜色

使用strokeStyle属性可以定义线的描边颜色,该属性的取值为十六进制颜色值或颜色的英文名。设置描边颜色的示例代码如下:

context.strokeStyle='4f00';
context.strokeStyle='red';

在上述代码中,两种方式都可以用于设置线的描边颜色为红色。

3.设置端点形状

默认情况下,线的端点是方形的,通过lineCap属性可以改变端点的形状,示例代码如下:

context.1ineCap=,属性值';

lineCap属性的取值有3个,具体如表所示。

lineCap属性的取值

了解了设置线的样式的基本方法后,下面演示如何为线设置样式。

(1)创建C:icodekchapter02\demol3.html,创建画布并为线设置宽度、颜色和端点形状,具体代码如下:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
</head>
<body>
  <canvas id="cas" width="300" height="300">
     您的测览器不支持Canvas标签
  </canvas>
  <script>
   var context=document.getElementById('cas').getContext('2d');
   context.moveTo(10,10);          // 定义初始位置
   context.1ineTo(300,10);         // 定义连线端点
   context.lineWidth='10';         // 设置线的宽度
   context.strokeStyle='red';      // 设置线的颜色
   context.lineCap='round';        // 设置线的端点形状
   context.stroke();               // 定叉描边
  </script>
</body>
</html>

上述代码中,第15行代码设置了线的宽度为10像素:第16行代码设置了线的颜色为红色;第17行代码设置了线的端点为圆形。

(2)保存代码,在浏览器中测试,页面效果如图所示。

页面显示一条红色的线,说明我们已经成功为线设置了样式。

相关文章

CSS常用十六进制颜色代码对照表(十六进制颜色代码原理)

我们在做网页时,经常会用到十六进制颜色代码,一个漂亮的网页,它的颜色搭配必定有讲究,下表是一些常用的颜色及十六进制颜色代码对照,记录在此,以便查阅!...

生成引人注目色彩的小型Javascript脚本——randomColor

介绍randomColor是一个生成随机颜色的JavaScript脚本,对于写代码的我们来说,生成一个随机颜色或许并不复杂,但是想要生成一个比较吸引人的随机颜色可能是需要花费一番功夫的,但如果已经有人...

HTML 标签和属性值的基本格式(html标签及属性大全百度资源)

HTML: HyperText Markup Language 超文本标记语言HTML代码不区分大小写, 包括HTML标记、属性、属性值都不区分大小写;任何空格或回车键在代码中都无效,插入空格或回车有...

PC网站建设必备代码知识:HTML基础与应用技巧

在PC网站建设的相关课程里,代码扮演着至关重要的角色。只有熟练运用正确的代码,我们才能打造出功能完善、用户体验出色的PC网站。接下来,我会详细讲解在PC网站建设环节中必须了解的代码知识。HTML基础代...

vb.net的颜色赋值代码(vb颜色表示代码)

有没有人跟我一样,对颜色的名称,除了常用的几种(如红色,白色,黄色,蓝色,绿色,黑色),就无法说出其它颜色的名称来。我解决这个问题的办法,我有一个图,上面都是Color结构已经定义的颜色的名称及对应颜...

html开发笔记08- 字体样式与颜色(标签的属性)

一、标签的分类:双标签和单标签双标签:就是成对出现的,类似于这种 <html> </html>单标签:就是可以单个使用的,类似于 <br> 换行标签 或 <h...