Html5 Canvas笔记(2)-Canvas绘图
用Canvas API绘图,需要画图形的边线并设置内部区域填充,边线英文语法对应stroke,填充对应fill,在后面我们会频繁看到这2个英文单词的出现。Canvas API内置的形状绘图函数比较少,可以完成绘制矩形Rect、弧形Arc,也可以画贝塞尔曲线bezierCurver、quadraticCurve。下面我们一个一个的来说。
画线-Line
function drawScreen(){
context.strokeStyle='black';
context.lineWidth=10;
context.lineCap='square';
context.beginPath(); //开始绘制路径
context.moveTo(20,0);
context.lineTo(100,0);
context.closePath(); //结束绘制路径
}
lineCap属性:用于定义线条、路径、边框线端点。
butt:默认值,端点是垂直于线段边缘的平直边缘;
round:端点是在线段边缘处以线宽为直径的半圆;
square:端点是在线段边缘处以线宽为长、以一半线宽为宽的矩形;
lineJoin属性:定义两条线相交产生的拐角。
miter:默认值,在连接处边缘延长相接;
bevel:连接处是一个对角线斜角;
round:连接处是一个圆;
lineWidth属性:线宽,默认值为1.0。
strokeStyle属性:定义线和形状边框的颜色和样式。
矩形-Rect
function drawScreen(){
context.fillStyle='#000000'; //设置图形填充样式
context.strokeStyle='#ff00ff'; //设置图形线框样式
context.lineWidth=; //指定线宽
context.fillRect(,,,); //填充矩形区域
context.strokeRect(,,,); //描绘矩形边框
context.clearRect(,,,); //清空矩形区域
}
fillRect(x,y,width,height):在位置(x,y)绘制宽width,高height的填充矩形
strokeRect(x,y,width,height):在位置(x,y)绘制宽width,高height的矩形外框
clearRect(x,y,width,height):从位置(x,y)开始清除宽width,高height的矩形区域,使其透明
注:一定要注意大小写的区别,javascript中是区分大小写的,一旦代码中输入的属性名、方法名或变量名等大小写输入错误,会导致运行错误;
弧线-Arc
function drawScreen(){
context.beginPath();
context.strokeStyle="black";
context.lineWidth=5;
context.arc(100,100,20,0,(Math.PI/180)*270,false);
context.stroke();
context.moveTo(0,0);
context.lineTo(100,200);
context.arcTo(350,350,100,100,20);
context.closePath();
}
arc(x,y,radius,startAngle,endAngle,anticlockwise):
(x,y):圆心坐标;
radius:圆弧半径;
anticlockwise:画圆弧的方向,true表示逆时针,false表示顺时针;
startAngle,endAngle:圆弧的起始角度与结束角度;
arcTo(x1,y1,x2,y2,radius):
(x1,y1):圆弧的起点位置坐标;
(x2,y2):圆弧结束位置坐标;
Html5 Canvas笔记(2)-Canvas绘图的更多相关文章
- HTML5自学笔记[ 19 ]canvas绘图实例之炫彩时钟
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- HTML5自学笔记[ 11 ]canvas绘图基础1
html5新增<canvas>标签用于绘制图像,默认宽高是300*150,canvas的宽高需要在这里设置,在css中设置会有问题:设置的形状,如矩形,会等比缩放,而非设置的宽高. 在不支 ...
- HTML5自学笔记[ 15 ]canvas绘图实例之钟表
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- HTML5自学笔记[ 13 ]canvas绘图小实例之方块移动
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- HTML5自学笔记[ 12 ]canvas绘图小示例之鼠标画线
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- HTML5自学笔记[ 24 ]canvas绘图之星空草地
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- HTML5自学笔记[ 21 ]canvas绘图实例之马赛克
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- HTML5自学笔记[ 20 ]canvas绘图实例之绘制倒影
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- HTML5自学笔记[ 17 ]canvas绘图基础4
绘制图像: drawImage(oImg,x,y),oImg是一个Image对象,(x,y)为绘制起点,绘制的图像大小和源图大小一样. drawImage(oImg,x,y,w,h),后两个参数设置绘 ...
随机推荐
- 网易云直播SDK使用总结
前言: 最近公司的项目中加入中直播这部分的功能,现在的直播平台真的很多很多,以前在朋友圈看到过这张图片,没办法一次性给大家看,就只能这样截成几张给大家看看.其实按照我自己的看法,现在的直播已经没办法做 ...
- javascript名字由来
javascript是由web发展初期的网景(Netscape)公司创建的,javascript是Sun Microsystem 公司(Oracle)的注册商标,用来特指网景(现在的Mozilla)对 ...
- 设置Image渲染模式使用TintColor
通过使用控件Tint Color,例如UIImageView,UIButton等 设置UIImage的渲染模式,使你用一张图片可以渲染成不同颜色,例如设置UIImage的渲染模式:UIImage.re ...
- WP8.1开发中对于XAML中一些语言的学习(1);
以前在学习WP开发的时候,看到视频中说到程序在创建之初,MainPaige.xaml页面上有一些代码: <Page x:Class="草案.MainPage" xmlns=& ...
- WP8.1开发中找程序下的Assets文件夹
这俩天在开发另一个程序时,遇到一个小问题:如何调用程序下的Assets文件夹及其下的文件和文件夹: 在网上找了两天,基本上是关于如何调用手机中库的方法,没找到有关介绍如何调用查找 编译前添加图片或其它 ...
- 【Unity优化】Unity优化技巧进阶开篇
版权声明:本文为博主原创文章,欢迎转载.请保留博主链接:http://blog.csdn.net/andrewfan 做游戏好多年了,关于游戏优化一直是令开发者头疼的一个问题.因为优化牵扯的内容很多, ...
- [微信小程序-开发工具]快捷键
1.进入快捷键 > > 2.快捷键 1.元素面板 ↑↓:导航元素 →←:展开/折叠 Enter:编辑属性 H:隐藏元素 F2:切换编辑HTML 2.样式窗口 Tab/Shift + T ...
- [hihoCoder]1014 Trie水题
最最最最最最最基本的Trie词频统计应用了. package trie; import java.util.Scanner; public class Main { public static voi ...
- 关于label和input对齐的那些是秦
input文本和label对齐 默认状态下,也就是下面这样, 文字和input是居中的. <div> <label>我是中国人</label> <input ...
- servlet匹配规则和顺序
1. 写法 ①完全匹配:以“/”开头,以字母(非“*”)结束 如:<url-pattern>/test/list.do</url-pattern> ②目录匹配:以“/” ...