canvas 标签:
获取画笔:

对象.getContext("2d")
制定画笔Syte:

context.fillStyle = "red";
context.fill();

context.strokeStyle = "blue";
context.stroke();
设置线条的宽度:

lineWidth=2 后面以像素单位

绘制有阴影的图形:

context.shadowBlur = 15;
context.shadowColor = "black";
绘制有渐变的图形:

context.createLinearGradient(10,10,110,10);起始位置和结束位置
addColorStop(0,"white");前面的图的百分比0-1
context.fillStyle = linearGradient;
绘制矩形:

context.fillRect(48,65,120,200);

擦除:

context.clearRect(0,0,200,100);

绘制圆形:

context.arc(0,0,0,0,0);
起始的X,Y,半径,起始角,弧度,逆时针:true 或者顺时针:False

绘制线条:

context.moveTo();
context.lineTo();

重置路径,开始新路径:

beginPath()

重置所有设置:

restore()
初始化起点位置:

translate() 坐标X和Y

例文:

<body>
<div>
<canvas id="cs" width="1300" height="600">
</canvas>
</div>
</body>

<script>

window.onload=function(){
android()
};
var cs = document.getElementById("cs");
//获取画笔
var context = cs.getContext("2d");

function android(){
context.lineWidth=25;
context.translate(400,150);
//绘制机器人身体
context.beginPath();
context.fillStyle = "#59cc41";
context.strokeStyle = "#59cc41";
context.lineJoin="round";
context.moveTo(0,0);
context.lineTo(80,0);
context.lineTo(80,90);
context.lineTo(0,90);
context.closePath();
context.fill();
context.stroke();
//绘制机器人的双手
context.beginPath();
context.lineWidth=2;

context.moveTo(-45,0);
context.lineTo(-45,60);
context.quadraticCurveTo(-35,70,-25,60);
context.lineTo(-25,0);
context.quadraticCurveTo(-35,-15,-45,0);

context.moveTo(105,0);
context.lineTo(105,60);
context.quadraticCurveTo(115,70,125,60);
context.lineTo(125,0);
context.quadraticCurveTo(115,-15,105,0);
context.fill();
//绘制机器人的双脚

context.moveTo(10,90);
context.lineTo(10,140);
context.quadraticCurveTo(20,150,30,140);
context.lineTo(30,90);

context.moveTo(50,90);
context.lineTo(50,140);
context.quadraticCurveTo(60,150,70,140);
context.lineTo(70,90);
context.fill();
//绘制机器人的头部
context.beginPath();
context.arc(40,-20,50,0,Math.PI,true);
context.fill();
//绘制机器人的眼睛
context.beginPath();
context.fillStyle = "black";
context.arc(20,-40,5,0,2*Math.PI,true);
context.fill();
context.beginPath();
context.fillStyle = "black";
context.arc(60,-40,5,0,2*Math.PI,true);
context.fill();
//绘制机器人的天线
context.beginPath();
context.lineWidth=5;
context.moveTo(10,-90);
context.lineTo(20,-60);
context.moveTo(70,-90);
context.lineTo(60,-60);
context.stroke();
}

</script>

HTML5页面绘图的更多相关文章

  1. 基于html5页面滚动背景图片动画效果

    基于html5页面滚动背景图片动画效果是一款带索引按钮的页面滚动动画特效代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div id="fullpage&q ...

  2. HTML5 页面制作工具

    https://www.zhihu.com/question/30087283 HTML5 页面制作工具 免费的基于 HTML 5 的 Web Apps 生成器工具网站     81 235 初页 制 ...

  3. 微信HTML5页面设计建议

    一个HTML5页面从提出到完成上线的流程:>   1.需求方.设计人员.H5实现人员三方共同讨论实现方案 2.设计人员出设计图 3.H5人员按设计图出H5页面 4.需求方评估已实现的H5页面后给 ...

  4. html5页面与android页面之间通过url传递参数

    html5页面与android页面之间可以通过url传递参数,android将参数放在htm5的url  ?后面,js获取url  ?号后面的参数. 方法一: <scrīpt> /* 用途 ...

  5. 转:HTML5页面如何在手机端浏览器调用相机、相册功能

    HTML5页面如何在手机端浏览器调用相机.相册功能 开发微信端浏览器访问的HTML5的页面,页面中有一个<input id="input" type="file&q ...

  6. HTML5页面开发的基础性模板

    分享一个HTML5页面开发的基础性模板,包含了两个版本: 开发版本 注释版本 开发版本 <!DOCTYPE html> <html> <head> <meta ...

  7. 写给“有钱大爷”、”美工殿下”、“前端文艺青年”的微信HTML5页面设计建议

    ==============================   2018更新 iphone X 的设计内容   ==============================     我保证你一分钟就 ...

  8. 在PC机上,如何用Chrome浏览器模拟查看和调试手机的HTML5页面?

    如题,如何用PC机上的Chrome浏览器模拟查看和调试手机HTML5页面? 参考操作步骤如下: 第一步.用Chrome打开要调试的页面: 第二步.按F12,打开“开发者工具”,点击其右上角的“Dock ...

  9. 用android studio创建第一个安卓程序加载html5 页面

    前言 软件版本:android studio v1.0正式版,由于v0.x以来软件变化一直比较大,很多问题搜索的解决方案也都是v0.x版本时代的,故首先声明一下版本. 动机:由于工作中需要对移动端软件 ...

随机推荐

  1. 防DDOS攻击SHELL脚本

    最近一段时间服务器频繁遭到DDOS攻击,目前只能通过封IP来源来暂时解决.IP不源变化多端,光靠手工来添加简直是恶梦,想了个方法,用SHELL来做. 比较简单,但很实用:) 以下内容根据作者原文进行适 ...

  2. Java 数据库操作类

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...

  3. mysql优化记录

    老板反应项目的反应越来越慢,叫优化一下,顺便学习总结一下mysql优化. 不同引擎的优化,myisam读的效果好,写的效率差,使用场景 非事务型应用只读类应用空间类应用 Innodb的特性,innod ...

  4. Spring实战 (第3版)——AOP

    在软件开发中,分布于应用中多处的功能被称为横切关注点.通常,这些横切关注点从概念上是与应用的 业务逻辑相分离的(但是往往直接嵌入到应用的业务逻辑之中).将这些横切关注点与业务逻辑相分离正是 面向切面编 ...

  5. .Net创建windows服务入门

    本文主要记录学习.net 如何创建windows服务. 1.创建一个Windows服务程序 2.新建安装程序 3.修改service文件 代码如下 protected override void On ...

  6. SQL 查找表名 字段名

    转载:http://www.accessoft.com/article-show.asp?id=6135 经常碰到一些忘记表名称的情况,此时只记得个大概,此时可通过查询系统表Sysobjects找到所 ...

  7. Coursera-Getting and Cleaning Data-week1-课程笔记

    博客总目录,记录学习R与数据分析的一切:http://www.cnblogs.com/weibaar/p/4507801.html -- Sunday, January 11, 2015 课程概述 G ...

  8. silverlight_容器

    Canvas絕對佈局 定位Canvas.Top.Canvas.Left ZIndex屬性 若制定2個控制項重疊,那麼後聲明控制項會覆蓋先聲明的控制項.此時可以使用Canvas.ZIndex屬性來改變它 ...

  9. UI第十二节

    - (void)viewDidLoad {    [super viewDidLoad];        UIButton *btn = [UIButton buttonWithType:UIButt ...

  10. 【Go入门教程5】面向对象(method、指针作为receiver、method继承、method重写)

    前面两章我们介绍了函数和struct,那你是否想过函数当作struct的字段一样来处理呢?今天我们就讲解一下函数的另一种形态,带有接收者(receiver)的函数,我们称为method method ...