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. deepin软件中心打不开

    想体验下deepin新特性,就修改了软件源为test版本,结果就坑了,软件中心打不开了...无奈之下,看了下论坛,找到了官方源地址,然后替换. sudo gedit /etc/apt/sources. ...

  2. Cleaning Shifts(POJ 2376 贪心)

    Cleaning Shifts Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 15143   Accepted: 3875 ...

  3. Smallest Difference(POJ 2718)

    Smallest Difference Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6740   Accepted: 18 ...

  4. debian gnome 3插件

    1.gnome 配置-安装插件 http://maxubuntu.blogspot.com/2012/09/debian-gnome3.html hunagqf|hunaqf2|hunaqf3 2.快 ...

  5. Extjs Tooltip属性的使用

    要想让 tooltip生效必须:Ext.QuickTips.init();

  6. Qt中事件处理的方法(三种处理方法,四种覆盖event函数,notify函数,event过滤,事件处理器。然后继续传递给父窗口。可观察QWidget::event的源码,它是虚拟保护函数,可改写)

    一.Qt中事件处理的方式   1.事件处理模式一 首先是事件源产生事件,最后是事件处理器对这些事件进行处理.然而也许大家会问, Qt中有这么多类的事件,我们怎么样比较简便的处理每个事件呢?设想,如果是 ...

  7. ServerProperties

    Spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动.其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat).当然你也可以将项 ...

  8. Android Studio参考在线文章

    This article is From :http://www.android-studio.org/index.php/docs/guide Gradle使用手册(一):为什么要用Gradle? ...

  9. JavaScript prototype.js提升JavaScript开发效率

    参考链接:http://www.yiibai.com/prototype/ Prototype提供主要方法类别: Prototype概述 Prototype实用功能 Prototype实用方法 Pro ...

  10. Implement Queue using Stacks 解答

    Question Implement the following operations of a queue using stacks. push(x) -- Push element x to th ...