canvas设置线条样式
canvas设置线条样式
合法属性和方法
lineWidth = value 设置线宽
lineCap = type 设置线端点样式
lineJoin = type 设置线交合处样式
setLineDash(segments) 设置虚线
lineDashOffset = value 设置虚线偏移
设置线宽

const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d'); ctx.lineWidth=1;
ctx.beginPath();
ctx.moveTo(50, 50);
ctx.lineTo(100, 50);
ctx.stroke(); ctx.lineWidth=2;
ctx.beginPath();
ctx.moveTo(50, 60);
ctx.lineTo(100, 60);
ctx.stroke(); ctx.lineWidth=3;
ctx.beginPath();
ctx.moveTo(50, 70);
ctx.lineTo(100, 70);
ctx.stroke(); ctx.lineWidth=4;
ctx.beginPath();
ctx.moveTo(50, 80);
ctx.lineTo(100, 80);
ctx.stroke(); ctx.lineWidth=5;
ctx.beginPath();
ctx.moveTo(50, 90);
ctx.lineTo(100, 90);
ctx.stroke();
设置线端点

ctx.beginPath();
ctx.lineCap="round";
ctx.lineWidth=10;
ctx.moveTo(50, 80);
ctx.lineTo(100, 80);
ctx.stroke(); ctx.beginPath();
ctx.lineCap="butt";
ctx.lineWidth=10;
ctx.moveTo(50, 100);
ctx.lineTo(100, 100);
ctx.stroke(); ctx.beginPath();
ctx.lineCap="square";
ctx.lineWidth=10;
ctx.moveTo(50, 120);
ctx.lineTo(100, 120);
ctx.stroke();
设置线交合

ctx.beginPath();
ctx.lineWidth=20;
ctx.lineJoin="round";
ctx.moveTo(50, 80);
ctx.lineTo(150, 120);
ctx.lineTo(250, 80);
ctx.stroke(); ctx.beginPath();
ctx.lineWidth=20;
ctx.lineJoin="bevel";
ctx.moveTo(50, 150);
ctx.lineTo(150, 190);
ctx.lineTo(250, 150);
ctx.stroke(); ctx.beginPath();
ctx.lineWidth=20;
ctx.lineJoin="miter";
ctx.moveTo(50, 220);
ctx.lineTo(150, 260);
ctx.lineTo(250, 220);
ctx.stroke();
设置虚线

var offset = 0; setInterval(() => {
offset++;
if (offset > 16) {
offset = 0;
} ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.setLineDash([4, 2]);
ctx.lineDashOffset = -offset;
ctx.strokeRect(10, 10, 100, 100); }, 20)
canvas设置线条样式的更多相关文章
- 8-2 canvas专题-线条样式
8-2 canvas专题-线条样式 学习要点 对第五章知识进行简单的回顾和总结 进一步讲解canvas绘图相关的知识点 第八章内容介绍 在第八章中我们将对以前的知识进行简单的回顾,着重对canvas绘 ...
- HTML5 canvas 中的线条样式
线条样式属性 lineCap 设置或返回线条的结束端点样式 butt 默认.向线条的每个末端添加平直的边缘. round 向线条的每个末端添加圆形线帽. ...
- [js高手之路] html5 canvas系列教程 - 线条样式(lineWidth,lineCap,lineJoin,setLineDash)
上文,写完弧度与贝塞尔曲线[js高手之路] html5 canvas系列教程 - arcTo(弧度与二次,三次贝塞尔曲线以及在线工具),本文主要是关于线条的样式设置 lineWidth: 设置线条的宽 ...
- canvas学习笔记(中篇) -- canvas入门教程-- 颜色/透明度/渐变色/线宽/线条样式/虚线/文本/阴影/图片/像素处理
[中篇] -- 建议学习时间4小时 课程共(上中下)三篇 此笔记是我初次接触canvas的时候的学习笔记,这次特意整理为博客供大家入门学习,几乎涵盖了canvas所有的基础知识,并且有众多练习案例, ...
- canvas绘制线条详解
canvas详解----绘制线条 <!DOCTYPE html> <html> <head> <title>canvas详解</title> ...
- HTML5 canvas绘制线条曲线
HTML5 canvas入门 线条例子 1.简单线条 2.三角形 3.填充三角形背景颜色 4.线条颜色以及线条大小 5.二次贝塞尔曲线 6.三次贝塞尔曲线 <!doctype html> ...
- 使用html5 Canvas绘制线条(直线、折线等)
使用html5 Canvas绘制直线所需的CanvasRenderingContext2D对象的主要属性和方法(有"()"者为方法)如下: 属性或方法 基本描述 strokeSty ...
- C# 拓展ComboBox设置线条属性(转)
C# 拓展ComboBox设置线条属性目前由于项目需要,要实现线条属性设置的功能,就如Visio中点击线端时,可以弹出一个窗口设置线条的各种属性. 其中线条属性选择时,是在ComboBox控件中,显示 ...
- js设置css样式.
在js设置css样式做法 var obj = document.getElementById('div'); obj.style.width = '100px'; obj.style.height = ...
随机推荐
- tp5.1报错 页面错误!请稍后再试
修改框架中convention.php // 应用调试模式 'app_debug' => true, 修改app.php不一定有效.
- [eclipse]eclipse设置条件断点Breakpoint Properties
1.在你要想停下的行上添加断点,在断点标记上单击右键,然后打开断点属性(Breakpoint Properties) 2.在断点属性(Breakpoint Properties)编辑对话框中勾选ena ...
- REST服务使用@RestController实例,输出xml/json
REST服务使用@RestController实例,输出xml/json 需要用到的服务注解 org.springframework.web.bind.annotation.RestControlle ...
- web.xml中contextConfigLocation参数的作用
<context-param> <param-name>contextConfigLocation</param-name> <param-value> ...
- App6种常见的数据加载设计
App6种常见的数据加载设计 设计师在进行APP设计的设计时,往往会更加专注于界面长什么样,界面和界面之间怎么跳转,给予用户什么样的操作反馈,却偏偏特别容易忽略掉一个比较重要的环节,就是APP数据加载 ...
- 理解Javascript的Event Loop
一.单线程 js作为浏览器脚本语言,他的主要用途是与用户交互,以及操作DOM,这决定了它只能是单线程,为什么呢?因为假如js同时有两个线程,一个线程是在DOM上增加内容,另一个线程是删除这个节点,那么 ...
- bzoj1077
题解 这道题n的范围很小,所以我们可以考虑枚举+判定 设放在天平右边的是C,D. 以A+B<C+D为例,因为差分约束必须是差的形式,所以我们将式子变形 B−C<D−A然后枚举D,A的取值, ...
- Unit Test Generator 简介
从Visual Studio 2012开始,创建单元测试从右键菜单中消失了,这让开发者感觉很不习惯.其实创建单元测试并不是消失了,只是独立成一个扩展Unit Test Generator,单独安装这个 ...
- Microsoft Office 2010 Service Pack 2 发布更新
Microsoft Office 2010 32 位版本 的 Service Pack 2 (SP2) 包含的新更新可以提高安全性.性能和稳定性.此外,SP 是以前发布的所有更新的汇总. 下载更新补丁 ...
- 关于protel 99se 汉化后某些菜单消失的解决方法
本人在使用protel 99se 画PCB时,遇到了好些问题,通过网上查资料基本都解决了. 下面给大家分享 关于protel 99se 汉化后某些菜单消失的解决方法. 其他的许多看不见的菜单也可以自己 ...