html5系列之canvas

2017-03-06  本文已影响42人  梦见君笑

一.概述

canvas只是图像的容器,绘制图像需要使用javascript来完成

1.基本步骤

0.定义一个画布,设置长宽。

<canvas id="myCanvas" width="200" height="300"><canvas>

1.首先找到canvas元素

var c = document.getElementById("myCanvas");

2.创建context对象

var ctx = c.getContext("2d");

3.绘制一个具体的图形,如下绘制一个颜色为#fff000的长方形

ctx.fillStyle = "#fff000";

ctx.fillRect(0,0,150,75);

2.方法

fill():填充

stroke():描边


二.应用场景

1.canvas --路径

moveTo(x,y);定义线条开始的坐标

lineTo(x,y):定义线条结束的坐标

var c =document.getElementById("myCanvas");

var ctx = c.getContext("2d");

ctx.moveTo(100,100);

ctx.lineTo(100,200);

2.canvas -- 圆形

arc( x, y, r, start,stop,[true/false]);

x,y: 坐标原点

r:半径

start,stop:起始角度到结束角度

true/false:顺/逆时针

var c = document.getElementById("myCanvas");

var ctx = c.getContext("2d");

ctx.beginPath();

ctx.arc(95,50,30,0,2*Math.PI);

ctx.stroke();

3.canvas -- 文本

font : 定义字体(字体,大小)

fillText: 绘制实心的文本

strokeText:绘制空心的文本

4.canvas -- 渐变

线条渐变:createLinearGradient(x,y,x1,y1);

径向渐变:createRadialGradient(x,y,r,x1,y1,r1);

addColorStop():指定颜色停止,可以使用坐标,通常0-1

线条渐变

//创建渐变

var grd= ctx.createLinearGradient(0,0,200,0);

grd.addColorStop(0,"red");

grd.addColorStop(1,"white");

//填充渐变

ctx.fillStyle = grd;

ctx.fillRect(10,10,150,80);

5.canvas -- 图像

drawImage(image,x,y);

上一篇 下一篇

猜你喜欢

热点阅读