Canvas元素是HTML5中新增的一个专门用来进行图形绘制的元素。和其名称Canvas一样,它就相当于一个画布,我们可以在其上描绘各种图形。

这里所说的绘制图型,不是指我们可以进行可视化的图形绘制,而是要利用javascript在其中进行进行操作。

这里做个简单的canvas实例:

1.在页面中添加canvas元素

首先在页面中添加canvas元素,需要给定其高度、宽度和唯一标识id<!doctype html>

<html lang="en">
 <head>
  <meta charset="UTF-8">  <script type="text/javascript" src="canvas.js"></script> </head>
 <body onload="draw('canvas')">
 <h1>Canvas元素示例</h1>
 <canvas id="canvas" width="400" height="300">
 </canvas>
 </body>
</html>

2.绘制矩形

在cavas.js文件中做绘制矩形操作:

function draw(id){
    //    1.获取canvas对象
    var canvasDom = document.getElementById(id);
    if(canvasDom == null){
        return false;
    }
    //  2.获取上下文
    var context = canvas.getContext('2d');
    //  3.填充与绘制边框
    context.fillRect(0, 0, 400, 300);
    //  4.设定绘图样式
    context.fillStyle = '#EEF'; // 填充颜色
    //  5.制定线宽
    context.lineWidth = 1;
    //  6.指定颜色值
    context.strokeStyle = 'blue';  // 设定边框颜色
    //  7.绘制矩形
    context.fillRect(50, 50, 100, 100);// 填充矩形
    context.strokeRect(50, 50, 100, 100); // 绘制矩形边框
}

最终效果

3.绘制圆形

function drawCircle(id){
    // 1.获取canvas
    var canvasDom = document.getElementById(id);
    if(canvasDom == null){
        return false;
    }
    // 2.获取上下文
    var context = canvas.getContext('2d');
    // 3.填充颜色
    context.fillStyle = "#EEF";
    // 4.进行绘制
    context.fillRect(0, 0, 400, 300);
    var n = 0;
    for(var i=0; i<10; i++){
        //    开始路径
        context.beginPath();
        //    绘制圆形路径
        context.arc(i*25, i*25, i*10, 0, Math.PI * 2, true);
        //    结束路径
        context.closePath();
        //    填充渐变色
        context.fillStyle = "rgba(255, 0, 0, 0.25)";
        //    进行图形绘制
        context.fill();
    }
}

效果图:

HTML5图形绘制学习(1)-- Canvas 元素简介的更多相关文章

  1. HTML5图形绘制

    要在HTML5中绘制图形,首先要放置一个canvas元素 <canvas id="canvas" width="400" height="300 ...

  2. 详解HTML5中的进度条progress元素简介及兼容性处理

    一.progress元素基本了解 1.基本知识 progress元素属于HTML5家族,指进度条.IE10+以及其他靠谱浏览器都支持. 注释:Internet Explorer 9 以及更早的版本不支 ...

  3. html5--5-1 了解canvas元素

    html5--5-1 了解canvas元素 学习要点 如何在HTML5文档中添加canvas元素 canvas的属性 了解canvas坐标系 了解script元素 绘制一条直线(准确的说是线段) 什么 ...

  4. HTML5新增及移除的元素

    HTML经过10多年的发展,其元素经历了废弃与不断重新定义的过程.为了更好的处理现在的互联网应用,HTML5新增了图形绘制.多媒体播放.页面结构.应用程序存储.网络工作等新元素.http://hove ...

  5. 小强的HTML5移动开发之路(6)——Canvas图形绘制基础

    来自:http://blog.csdn.net/dawanganban/article/details/17686039 在前面提到Canvas是HTML5中一个重要特点,canvas功能非常强大,用 ...

  6. HTML5<canvas>标签:使用canvas元素在网页上绘制线条和圆(1)

    什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以 ...

  7. HTML5学习总结——canvas绘制象棋(canvas绘图)

    一.HTML5学习总结——canvas绘制象棋 1.第一次:canvas绘制象棋(笨方法)示例代码: <!DOCTYPE html> <html> <head> & ...

  8. [html] 学习笔记-Canvas图形绘制处理

    使用Canvas API 可以将一个图形重叠绘制在另外一个图形上,也可以给图形添加阴影效果. 1.Canvas 图形组合 通过 globalCompositeOperation = 属性 来指定重叠效 ...

  9. HTML5移动开发学习笔记之Canvas基础

    1.第一个Canvas程序 看的是HTML5移动开发即学即用这本书,首先学习Canvas基础,废话不多说,直接看第一个例子. 效果图为: 代码如下: <!DOCTYPE html> < ...

随机推荐

  1. (原)Opencv中直方图均衡和图像动态范围拉伸的代码

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5102032.html 参考网址: http://blog.csdn.net/abcjennifer/a ...

  2. HTTP协议入门知识

    HTTP超文本传输协议,是客户端浏览器和服务器通信的规范,是浏览器与服务器通信的协议,属于应用层的协议,web开发者了解HTTP协议非常重要.浏览器通过http协议请求服务器,完成请求服务器立刻关闭连 ...

  3. jquery 源码分析

    想给自己一个任务,接下来要分析jquery源码,然后按照jquery的思想打造一个适合webkit的类jquery微框架,一切从模仿起!

  4. jquery 单选框整个选中

    问题:遇到单选框,如图 解决办法:利用jqurey click->checked <!DOCTYPE html> <html lang="en"> & ...

  5. 学习第一个头文件stdio.h

    使用标准输入输出库函数时要用到 “stdio.h”文件,因此源文件开头应有以下预编译命令: #include<stdio.h> stdio是standard input&outup ...

  6. Measuring Lengths in Baden

    Description Measuring Lengths in Baden time limit per test: 2 seconds memory limit per test: 256 meg ...

  7. .net 拉姆达 groupby(p => p.X) order by count(c.Count())

    //国家 var entityCountriesList = aliexpressEntities.SYS_CourierCode.Where(whereSelect.Compile()).Group ...

  8. nodejs 如何使用upgrade,并且C/B 发送消息

    1 const http = require('http'); const querystring = require("querystring"); var postData = ...

  9. Linux dirname、basename(转)

    首先使用 --help 参数查看一下.basename命令参数很少,很容易掌握. $ basename --help 用法示例: $ basename /usr/bin/sort       输出&q ...

  10. 剑指offer-面试题16.反转链表

    题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后的头结点 链表结点定义如下: struct ListNode { int m_nKey; ListNode* m_pNext; } 其实 ...