<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>canvas test</title>
</head>
<body>
<!--矩形填充,fill指填充当前绘图(路径)-->
<canvas id="myCanvas1">your browser does not support the canvas tag </canvas> <script type="text/javascript"> var canvas=document.getElementById('myCanvas1');
var ctx=canvas.getContext('2d');
ctx.fillStyle='#FF0000';
ctx.shadowBlur=20;
ctx.shadowColor="gray";
ctx.fillRect(20,20,80,100); </script> <!--矩形描边,stroke指绘制已定义的路径-->
<canvas id="myCanvas0">your browser does not support the canvas tag </canvas> <script type="text/javascript">
var canvas=document.getElementById('myCanvas0');
var ctx=canvas.getContext('2d');
ctx.strokeRect(20,20,80,100); </script> <!--圆-->
<canvas id="arc" width="200px" height="200px" style="border:1px solid gray"></canvas>
<script>
var arc=document.getElementById("arc");
ctx=arc.getContext("2d");
ctx.strokeStyle="red";
ctx.beginPath();
ctx.arc(100,100,50,0,2*Math.PI);
ctx.arc(100,100,70,0,2*Math.PI);
ctx.stroke();
</script> <!--绘制线条-->
<canvas id="line" width="200px" height="200px" style="border:1px solid gray"></canvas>
<script>
var line=document.getElementById("line");
ctx=line.getContext("2d");
ctx.fillStyle="red";
ctx.moveTo(0,0);
ctx.lineTo(100,100);
ctx.lineTo(200,0);
ctx.lineTo(200,150);
ctx.lineTo(0,150);
ctx.lineTo(0,0);
ctx.fill(); </script> <!--文本-->
<canvas id="txt" width="200px" height="200px" style="border:1px solid red">您的浏览器不支持 HTML5 canvas 标签。</canvas>
<script>
var txt=document.getElementById("txt");
var text=txt.getContext("2d");
text.font="60px 微软雅黑";
text.fillText("练习",40,110); </script> <!--文本空心-->
<canvas id="txt1" width="200px" height="200px" style="border:1px solid red">您的浏览器不支持 HTML5 canvas 标签。</canvas>
<script>
var txt=document.getElementById("txt1");
var text=txt.getContext("2d");
text.strokeStyle="red"
text.font="60px 微软雅黑";
text.strokeText("练习",40,110); </script> <!--渐变-->
<canvas id="gradient" width="200px" height="200px" style="border:1px solid red"></canvas>
<script>
var c=document.getElementById("gradient");
var text=c.getContext("2d"); <!--线性渐变-->
var gra=text.createLinearGradient(0,0,0,200);
gra.addColorStop(0,'red');
gra.addColorStop(1,'#000');
text.fillStyle=gra;
text.fillRect(0,0,200,200);
</script> <canvas id="gradient2" width="200px" height="200px" style="border:1px solid red"></canvas>
<script>
var c=document.getElementById("gradient2");
var text=c.getContext("2d"); <!--径向渐变-->
var lin=text.createRadialGradient(100,100,30,100,100,100);
lin.addColorStop(0,'#fff');
lin.addColorStop(1,'#000');
text.fillStyle=lin;
text.fillRect(0,0,200,200);
</script>
</body>
</html>

canvas标签的使用的更多相关文章

  1. canvas标签(1)--线条、矩形、圆形、文本、阴影、抛小球

    从网上扒拉的代码,敲了敲代码玩. html页面显示内容很简单,只要写个canvas标签,给他一个id写js就可以了 <!DOCTYPE html> <html> <hea ...

  2. html5 canvas标签

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

  3. HTML5新增Canvas标签及对应属性、API详解(基础一)

    知识说明: HTML5新增的canvas标签,通过创建画布,在画布上创建任何想要的形状,下面将canvas的API以及属性做一个整理,并且附上时钟的示例,便于后期复习学习!Fighting! 一.标签 ...

  4. html5之canvas困惑 在canvas标签内需要设置了宽跟高,如果在css中设置同样的宽跟高,画出来的图像变形了?

    <canvas class="cvs"></canvas> 遇到的问题: 如css 中设.cvs{width:500px;height:400px;},也就 ...

  5. HTML5 canvas标签绘制正三角形 鼠标按下点为中间点,鼠标抬起点为其中一个顶点

    用html5的canvas标签绘制圆.矩形比较容易,绘制三角形,坐标确定相当于前面两种难点,这里绘制的是正三角形,比较容易,我们只需要把鼠标刚按下去的点设置为三角形的中心点,鼠标抬起的点设置为三角形右 ...

  6. [html5] 学习笔记-Canvas标签的使用

    Canvas通过JavaScript来绘制2D图形.Canvas是逐像素渲染的.在Canvas中,一旦图形被绘制完成,它就不会继续得到浏览器的关注.如果其位置发生变化,那么整个场景也需要重新绘制,包括 ...

  7. HTML5的canvas标签制作黑客帝国里的简单画面

    1.加入canvas标签 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"/> ...

  8. JS canvas标签动态绘制图型

    使用canvas标签动态绘制图型,当点击鼠标时,以鼠标点击的坐标作为图形中心点.当点击数为偶数时画三角形,当点击数为奇数时画五角星 <!DOCTYPE HTML> <html> ...

  9. Canvas标签基础

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. [UWP]浅谈按钮设计

    一时兴起想谈谈UWP按钮的设计. 按钮是UI中最重要的元素之一,可能也是用得最多的交互元素.好的按钮设计可以有效提高用户体验,构造让人眼前一亮的UI.而且按钮通常不会影响布局,小小的按钮无论怎么改也不 ...

  2. dashDB - Introduction and DB Tools

    dashDB - Introduction dashDB is a database that is designed for performance and scale. It offers sea ...

  3. Java xml 解析

    1. XML框架结构 Java SE 6 平台提供的 XML 处理主要包括两个功能:XML 处理(JAXP,Java Architecture XML Processing)和 XML 绑定(JAXB ...

  4. Spring MVC 基本注解

    1. Spring MVC 常用到的注解: @Controller @RequestMapping @RequestParam @RequestHeader @ModelAttribute @Path ...

  5. MS SQL Server Management Studio中提示不允许保长度出现不允许保存更改。您所做的更改要求删除并重新创建以下表

    在SQL Server Management Studio中直接修改正在连接的表结构会出现改不了的情况,如下图 解决方法:工具-选项-设计器--阻止保存要求重新创建表的更改,去掉对勾--确定即可

  6. Django学习(八)---修改文章和添加文章

    博客页面的修改文章和添加新文章 从主页点击不同文章的超链接进入文章页面,就是传递了一个id作为参数,然后后台代码根据这个参数从数据库中取出来对应的文章,并把它传递到前端页面 修改文章和添加新文章,是要 ...

  7. Delphi Screen.DataModuleCount 总是返回 0!Delphi 的 Bug? DataModuleCount = 0

         今天遇到一个很隐蔽的 Delphi 问题,不知做了什么,有一个功能总是不能使用,后来跟踪以下发现是因为 Screen.DataModuleCount 总是返回 0,而程序中一个函数正好要用到 ...

  8. Jmeter编写Base64加密函数

    方法一: 使用Beanshell Sampler.BSF Sampler等实现,现已Base64加密为例,脚本如下: import sun.misc.BASE64Decoder; String res ...

  9. <EffectiveJava>读书笔记--01继承的使用注意

    1, 父类的构造器方法中不能调用能够被子类重写的方法. 分析: 当初始化一个子类时, 首先要初始化父类, 即调用父类的构造方法; 如果父类的构造方法中调用了可被重写的其它方法, 那么此时调用的其实是该 ...

  10. TCP 滑动窗口

    滑动窗口协议 流量控制方法 PUSH 慢启动   隔一个报文段确认"的策略实际就是因为 delayed ack,同时接收到两个待确认的ACK包时,就立即发送确认包.   滑动窗口实例   解 ...