<script>
var context = document.getElementById('canvas').getContext('2d');
context.font = '48pt Helvetica';
context.strokeStyle = 'blue';//边框颜色
context.fillStyle = 'red';//填充颜色
context.lineWidth = '2'; //画文字
context.strokeText('边框', 60, 110);
context.fillText('填充', 440, 110); context.strokeText('边框和填充', 650, 110);
context.fillText('边框和填充', 650, 110);
//画矩形
context.lineWidth = '5';
context.beginPath();//边框 矩形
context.rect(80, 150, 150, 100);
context.stroke(); context.beginPath();//填充 矩形
context.rect(400, 150, 150, 100);
context.fill(); context.beginPath();//边框和填充
context.rect(750, 150, 150, 100);
context.stroke();
context.fill(); //画弧度
context.beginPath();
context.arc(150, 370, 60, 0, 1.5 * Math.PI);
context.stroke(); context.beginPath();
context.arc(475, 370, 60, 0, Math.PI * 3 / 2);
context.fill(); context.beginPath();
context.arc(820, 370, 60, 0, Math.PI * 3 / 2);
context.stroke();
context.fill();
//closePath()方法创建当前点到起始点的路径
context.beginPath();
context.arc(150, 550, 60, 0, Math.PI * 3 / 2);
context.closePath();
context.stroke(); context.beginPath();
context.arc(475, 550, 60, 0, Math.PI * 3 / 2);
context.closePath();
context.fill(); context.beginPath();
context.arc(820, 550, 60, 0, Math.PI * 3 / 2);
context.closePath();
context.stroke();
context.fill();
//绘制三角形
context.beginPath();
context.moveTo(120, 650);
context.lineTo(120, 750);
context.lineTo(180, 750);
context.closePath();
context.stroke(); context.beginPath();
context.moveTo(450, 650);
context.lineTo(450, 750);
context.lineTo(510, 750);
context.closePath();
context.fill(); context.beginPath();
context.moveTo(810, 650);
context.lineTo(810, 750);
context.lineTo(870, 750);
context.closePath();
context.fill();
context.stroke(); context.beginPath();
context.moveTo(120, 800);
context.lineTo(120, 900);
context.lineTo(180, 900);
context.stroke(); context.beginPath();
context.moveTo(450, 800);
context.lineTo(450, 900);
context.lineTo(510, 900);
context.fill(); context.beginPath();
context.moveTo(810, 800);
context.lineTo(810, 900);
context.lineTo(870, 900);
context.fill();
context.stroke();
</script>

练习代码

Canvas路径、描边、填充的更多相关文章

  1. Canvas绘图中的路径描边与填充

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博客地址为http://www.cnblogs.com/jasonnode/ .网站上有对应每一 ...

  2. 理解canvas路径

    canvas路径和ps里面的路径差不多,在进行图形绘制时,先绘制出来图形的路径,然后再描边或者填充. canvas路径还有子路径的概念,在某一时刻,canvas之中只能有一条路径存在,Canvas规范 ...

  3. 纯CSS实现帅气的SVG路径描边动画效果(转载)

    本文转载自: 纯CSS实现帅气的SVG路径描边动画效果

  4. Canvas路径方向

    使用Canvas路径画图需要注意方向,画图方向是顺时针还是逆时针需要记住.下面让我们看看Canvas常见路径方向. arc 参数值 context.arc(x,y,r,sAngle,eAngle,co ...

  5. html5 canvas用图案填充形状

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. canvas放射性渐变填充

    今天在学习canvas时,遇到canvas的fillstyle有一个createRadialGradient()方法,创建放射性渐变. 上代码: <!DOCTYPE html> <h ...

  7. html5 canvas 弧形描边渐变

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. html5 canvas 多个填充渐变形状

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. canvas路径绘制

    惯例,先贴代码: 1 /** 2 * Created by Administrator on 2016/1/27. 3 */ 4 function draw (id){ 5 var canvas = ...

随机推荐

  1. 开源语音识别系统 Simon

    http://www.lupaworld.com/proj.php?mod=view&cid=&id=824 语音识别系统 Simon:Simon 是一个开源的语音识别系统,它不仅可以 ...

  2. ar解压deb包

    解压文件 ar -x libstdc++6_4.7.2-5_i386.deb tar -zxvf data.tar.gz

  3. JQuery UI 精品UI推荐

    1.JQuery MiniUi  http://www.miniui.com/

  4. 匹配html标签的正则式

    $reg = "/<" + element + "[^<>]*?\s+" + attr + "=['\"]?(.*?)[' ...

  5. (转) iOS深入学习(Block全面分析)

    本文翻译自苹果的文档,有删减,也有添加自己的理解部分. 如果有Block语法不懂的,可以参考fuckingblocksyntax,里面对于Block 为了方便对比,下面的代码我假设是写在ViewCon ...

  6. C语言中的回调函数

    C语言中通过函数指针实现回调函数(Callback Function) ====== 首先使用typedef定义回调函数类型 ======  typedef void (*event_cb_t)(co ...

  7. sql中int字段实现百分比

    首先: 用col*1.00 把int字段隐式转换成decimal类型. 然后: 用 round(col,2)来截取前两个小数前的数据 最后: 用 CONVERT(FLOAT,decimalNum)来转 ...

  8. VS2010中xercesc配置及简单示例

    从官网下载xerces-c-3.1.1并解压,打开工程项目 xerces-c-3.1.1\projects\Win32\VC10\xerces-all\xerces-all.sln, 选择Xerces ...

  9. clinit和init(转载)

    clinit和init(转载)   今天在看深入Java虚拟机的class文件结构时,看到了这么一句话, 可能出现在class文件中的两种编译器产生的方法是:实例初始化方法(名为<init> ...

  10. SSH框架整合 日志处理Spring结合 log4j、slf4j

    1. 加入log4j和slf4j的jar包 2. web.xml: <context-param> <!--log4j配置地址 --> <param-name>lo ...