HTML5 canvas 中的线条样式
线条样式属性
lineCap 设置或返回线条的结束端点样式
butt 默认。向线条的每个末端添加平直的边缘。
round 向线条的每个末端添加圆形线帽。
square 向线条的每个末端添加正方形线帽。
lineJoin 设置或返回两条线相交时,所创建的拐角类型
bevel 创建斜角。
round 创建圆角。
miter 默认。创建尖角。
lineWidth 设置或返回当前的线条宽度
number 当前线条的宽度,以像素计
miterLimit 设置或返回最大斜接长度
number 正数。规定最大斜接长度。
如果斜接长度超过 miterLimit 的值,边角会以 lineJoin 的 "bevel" 类型来显示。
<canvas id="c" width="500" height="450" style="border:1px solid #000"></canvas>
<script type="text/javascript">
var a=document.getElementById("c");
var ctx=a.getContext("2d");
ctx.beginPath(); //起始一条路径,或重置当前路径
ctx.moveTo(20,20); //把路径移动到画布中的指定点,不创建线条
ctx.lineTo(200,20); //添加一个新点,然后在画布中创建从该点到最后指定点的线条
ctx.lineWidth=5; //设置或返回当前的线条宽度
ctx.lineCap="round"; //向线条的每个末端添加圆形线帽。
ctx.strokeStyle="green";
ctx.stroke(); ctx.beginPath();
ctx.moveTo(20,40);
ctx.lineTo(200,40);
ctx.lineWidth=5; //设置或返回当前的线条宽度
ctx.lineCap="butt"; //默认。向线条的每个末端添加平直的边缘。
ctx.strokeStyle="blue";
ctx.stroke(); ctx.beginPath();
ctx.moveTo(20,60);
ctx.lineTo(200,60);
ctx.lineWidth=5; //设置或返回当前的线条宽度
ctx.lineCap="square"; //向线条的每个末端添加正方形线帽。
ctx.strokeStyle="yellow";
ctx.stroke(); ctx.beginPath();
ctx.lineJoin="round"; //设置或返回两条线相交时,所创建的拐角类型
ctx.moveTo(20,80);
ctx.lineTo(50,100);
ctx.lineTo(20,120);
ctx.lineWidth=20;
ctx.strokeStyle="red";
ctx.stroke(); ctx.beginPath();
ctx.lineJoin="bevel";
ctx.moveTo(120,80);
ctx.lineTo(150,100);
ctx.lineTo(120,120);
ctx.lineWidth=20;
ctx.strokeStyle="red";
ctx.stroke(); ctx.beginPath();
ctx.lineJoin="miter";
ctx.moveTo(220,80);
ctx.lineTo(250,100);
ctx.lineTo(220,120);
ctx.lineWidth=20;
ctx.strokeStyle="red";
ctx.stroke(); ctx.beginPath();
ctx.lineWidth=10;
ctx.lineJoin="miter";
ctx.miterLimit=5; //设置或返回最大斜接长度,斜接长度指的是在两条线交汇处内角和外角之间的距离
ctx.moveTo(20,150);
ctx.lineTo(50,157);
ctx.lineTo(20,164);
ctx.stroke();
</script>

HTML5 canvas 中的线条样式的更多相关文章
- [js高手之路] html5 canvas系列教程 - 线条样式(lineWidth,lineCap,lineJoin,setLineDash)
上文,写完弧度与贝塞尔曲线[js高手之路] html5 canvas系列教程 - arcTo(弧度与二次,三次贝塞尔曲线以及在线工具),本文主要是关于线条的样式设置 lineWidth: 设置线条的宽 ...
- [js高手之路] html5 canvas系列教程 - 文本样式(strokeText,fillText,measureText,textAlign,textBaseline)
接着上文线条样式[js高手之路] html5 canvas系列教程 - 线条样式(lineWidth,lineCap,lineJoin,setLineDash)继续. canvas提供两种输出文本的方 ...
- HTML5 Canvas中实现绘制一个像素宽的细线
正统的HTML5 Canvas中如下代码 ctx.lineWidth = 1; ctx.beginPath(); ctx.moveTo(10, 100); ctx.lineTo(300,100); c ...
- HTML5 Canvas ( 线段端点的样式 ) lineCap
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- HTML5 Canvas 中的颜色、样式和阴影的属性和方法
颜色.样式和阴影的属性与方法 fillStyle 设置或返回用于填充绘画的颜色.渐变或模式 strokeStyle 设置或返回用于笔触的颜色.渐变或模式 ...
- html5 canvas中CanvasGradient对象用法
html5 中canvas提供了强大的渲染样式,可以实现一些比较复杂的样式设置,今天学习了CanvasGradient对象可以实现一个颜色的渐变 CanvasGradient对象可以实现两种不同形式的 ...
- HTML5 canvas中的路径方法
路径方法 fill() 填充当前绘图(路径) stroke() 绘制已定义的路径 begin ...
- HTML5 Canvas中9宫格的坑
近期小鸟情人游戏上了手机qq空间,一个3岁的游戏来了她的第二春.为了能有更好的表现,我们对其进行了一次改版. 改版当中一项就是对原来的弹出框样式进行改进.将大块木板材质改成纯色(边框为圆角金属材质)样 ...
- HTML5 Canvas中绘制椭圆的几种方法
1.canvas自带的绘制椭圆的方法 ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise)是后来 ...
随机推荐
- android host
74.125.20.31 market.android.com 74.125.20.31 developer.android.com 74.125.20.31 android.googlesource ...
- poj 3308 Paratroopers
http://poj.org/problem?id=3308 #include <cstdio> #include <cstring> #include <algorit ...
- MVC与三层架构的区别
我们平时总是将三层架构与MVC混为一谈,殊不知它俩并不是一个概念.下面我来为大家揭晓我所知道的一些真相. 首先,它俩根本不是一个概念. 三层架构是一个分层式的软件体系架构设计,它可适用于任何一个项目. ...
- 【HDOJ】2150 Pipe
计算几何的基础题目.是时候刷刷计算几何了. /* 2150 */ #include <cstdio> #include <cstring> #include <cstdl ...
- COJN 0585 800604鸡蛋的硬度
800604鸡蛋的硬度 难度级别:B: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 最近XX公司举办了一个奇怪的比赛:鸡蛋硬度之王争霸赛.参 ...
- JavaScript权威指南学习笔记4
今天看了第9.10.11章,感觉收获最大还是正则表达式那章节,不过这些不用太多脑子思考,问题用到了直接查书就可以了,下面分别总结一下: 第9章类和模块:分9节,前面8节都是在讲类相关的知识,最后一节讲 ...
- Java中的局部代码块、构造代码块、静态代码块
局部代码块: 作用:控制变量的生命周期: 在程序中,当我们已经使用完 x 后,并且在接下来的代码中,不会再用到x,那么就没必要让x 在内存中占用空间了,这用情况下,可以使用 局部代码块,将x及其所设计 ...
- 敏捷软件开发模型--SCRUM
敏捷软件开发模型--SCRUM 一 什么是Scrum?Scrum (英式橄榄球争球队), 软件开发模型是敏捷开发的一种,在最近的一两年内逐渐流行起来. Scrum的基本假设是: 开发软件就像开发新产品 ...
- wxWidgets搜索事件处理函数顺序
详细参见:使用wxWidgets进行跨平台程序开发 (王强 译) 实例: class MyFrame:public wxFrame { public: MyFrame() { wxButton* bu ...
- 基于Equinox构建OSGi项目
几种OSGi框架 Several independently implemented OSGi frameworks exist today, including four that are avai ...