canvas 绘制矩形和圆形
canvas绘制有两神方法:
1)、填充(fill)
填充是将图形内部填满.
2)、绘制边框 (stroke)
绘制边框是不把图形内部填满,只是绘制图形的外框.
当我们在绘制图形的时候,首先要设定好绘制的样式,然后我们就可以调用有关的方法进行绘制
fillStyle属性
填充的样式,在这个属性里面设置填入的填充颜色值
strokeStyle属性
图形边框的样式,在这个属性里面设置填入边框的填充颜色
绘制矩形案例:
在body的属性里面,使用onload="draw('canvas' )“语句,调用脚本文件中的draw函数进行图形绘画
画布的创建方法:指定 id , width(画布宽度), height(画布高度)
创建一个画布,长度为600,高度为400
<body onload="draw('canvas')">
<canvas id="canvas" width="600" height="400"></canvas>
</body>
引入一个名为canvas的is脚本,js脚本的语言编码是utf-8
function draw(id){
var canvas = document.getElementById(id);
var context = canvas.getContext('2d'); //getContext() 方法可返回一个对象
context.fillStyle = "green"; // 设置或返回用于填充绘画的颜色、渐变或模式
context.strokeStyle = "#fff"; //图形边框的填充颜色
context.lineWidth = 5; //用宽度为 5 像素的线条来绘制矩形:
context.fillRect(0,0,400,300); // x轴 y轴 宽 和 高 ,绘制“被填充”的矩形
context.strokeRect(50,50,180,120); //绘制矩形(无填充)
context.strokeRect(110,110,180,120);
}
使用filiRect方法和strokeRect方法来填充矩形和绘制矩形的边框
context. fillRect (x,y,width,height)
context.strokeRect (x,y,width,height)
这两种方法的参数都是一样的,x是指拒形的起点横坐标,y是指拒形的纵坐标.坐标的原点是canvas画布的最左上角,
width是指拒形的长度,height是指矩形的高度.
绘制圆形案例:
创建圆形路径时,需要使用图形上下文对像的arc方法。
context.arc (x,y,radius,starAngle,endAngle,anticlockwise)
x是绘制圆形的起点横坐标,y是绘创圆形起点的纵坐标,radius是图形的半径,
starAngle是开始的角度,endAngle是结束的角度·
anticlockwise是否按顺时针方向绘制
绘制半径与圆弧时指定参数为开始弧度与结束弧度,也可以把角度换成弧度
var radius = degrees *Math.Pl/180
这个里面的Math.Pl表示的角度是180度,Math.Pl*2的角度是360度.
function draw(id){
var canvas = document.getElementById(id);
var context = canvas.getContext('2d');
context.fillStyle = "#f1f2f3";
context.fillRect(0,0,400,400);
for(var i=0;i<10;i++){ context.arc(i*25,i*25,i*10,0,Math.PI*2,true); context.fillStyle = "rgba(255,0,0,0.25)";
context.fill(); }
}
保存文件
function draw(id){
var canvas = document.getElementById(id);
var context = canvas.getContext('2d');
context.fillStyle = "green";
context.fillRect(0,0,400,300);
window.location = canvas.toDataURL('image/png');
}
canvas 绘制矩形和圆形的更多相关文章
- h5学习-canvas绘制矩形、圆形、文字、动画
绘制矩形<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
- Canvas 绘制矩形,圆形,不规则图形(线条),渐变等图像效果
绘制矩形: getContext("2d") 对象是内建的 HTML5 对象,拥有多种绘制路径.矩形.圆形.字符以及添加图像的方法. fillStyle 方法将其染成红色,fill ...
- html5 canvas绘制矩形和圆形
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- HTML5绘制矩形和圆形并且还有获取在这个图层内的坐标的思路和代码 - feilong_12的专栏 - 博客频道 - CSDN.NET
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- canvas绘制矩形
canvas绘制矩形 方法 fillRect(x, y, width, height) 画一个实心的矩形 clearRect(x, y, width, height) 清除一块儿矩形区域 stroke ...
- canvas 绘制 矩形 圆形
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head> <tit ...
- canvas 绘制矩形
XXX(x,y,width,height) x矩形左上角x坐标 y矩形左上角y坐标 ...
- vue下canvas绘制矩形
起因:根据项目需求本人写了一个绘制矩形的组件.功能:在图片中绘制矩形,根据图片大小进行自适应展示,获取图片矩形坐标.思路:首先定义一个固定大小的DIV,DIV标签中有监测鼠标变化的四个事件moused ...
- canvas绘制线和矩形
###canvas绘制矩形 HTML中的元素canvas只支持一种原生的图形绘制:矩形.所有其他的图形的绘制都至少需要生成一条路径 1.绘制矩形 canvas提供了三种方法绘制矩形: ----> ...
随机推荐
- Java SE 第二十一讲----抽象类
1.抽象类(abstract class):使用了abstract关键字修饰的类叫做抽象类,抽象类无法实例化,也就是说,不能new出来一个抽象类的对象. 2.抽象方法(abstract method) ...
- dubbo的代码项目结构
dubbo 的项目(Project)包含下面模块(Module): 这些模块的功能描述如下: dubbo-admin dubbo的管理平台 dubbo-demo 包含生产者.消费者.接口定义的du ...
- jquery.cookie.js 配置
一定要写入cookies路径 一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cookie.js 的配置 首先包含jQuery的库文件,在后面包含 jquery.c ...
- POJ 2516 Minimum Cost [最小费用最大流]
题意略: 思路: 这题比较坑的地方是把每种货物单独建图分开算就ok了. #include<stdio.h> #include<queue> #define MAXN 500 # ...
- POJ 3311 【状态压缩DP】
题意: 给n个点,给出矩阵代表i到j单向边的距离. 要求,不介意访问每个点的次数,要求访问完每个点,使得路程总和最小. 思路: 由于不介意访问每个点的次数,所以可以先进行FLOYD求出任意两个点之间的 ...
- DDL(Oracle)
DDL 数据定义 建表 建视图 建其他 drop create table t (a varchar2 (10));可变字符串最大为10 transaction - ...
- 安装和卸载windows程序
安装windows service通常有两种工具 1.Framework目录下的installutil.exe工具.2.visual studio命令行工具 在这里我要说的是当我们使用的系统是64位的 ...
- MacPE+WinPE-黑苹果之路
装黑苹果过程中,安装.备份.恢复都需要启动到MAC,总是从硬盘启动对于硬盘数据风险太大,琢磨着安装个pe用来维护,此外手上的winpe,也想着一并实现,免得搞两个u盘.找了个网页开工,http://b ...
- android 多级下拉菜单实现教程
原创,如转载请标明链接:http://blog.csdn.net/q610098308/article/details/50333387 很多App,都有二级菜单出现,但android 本身实现的菜单 ...
- Android开发-API指南-<provider>
<provider> 英文原文:http://developer.android.com/guide/topics/manifest/provider-element.html 采集(更新 ...