IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> CANVAS画布 -> 正文阅读

[JavaScript知识库]CANVAS画布

Canvas的使用

<canvas id="canvas"  height="300" width="300">
	您的浏览器不支持canvas标签
</canvas>

canvas标签在页面中只显示一个设定背景色的画布,canvas 元素本身是没有绘图能力的。所有的绘制工作必须在 JavaScript 内部完成,canvas只是提供了一个javascript图形图像的绘制接口API

检测浏览器是否支持canvas标签

<canvas id="Canvas"></canvas> 
<script>
		if (!document.getElementById("Canvas").getContext){
			 alert("不支持html5 canvas");   
		}else{
		  alert("支持html5 canvas");  
		} 
</script>

canvas的常见属性

在这里插入图片描述

Canvas的API

canvas主要属性和方法
在这里插入图片描述

Canvas的API

颜色、样式和阴影属性和方法
在这里插入图片描述
在这里插入图片描述

Canvas的API

线条样式属性和方法
在这里插入图片描述

Canvas的API-路径方法

在这里插入图片描述
画线方法

<script type="text/javascript">
var c=document.getElementById("myCanvas");
var context=c.getContext("2d");
context.moveTo(0,0);/*起点坐标*/
context.lineTo(100,0); /*终点坐标*/
context.stroke();
</script>

矩形方法
在这里插入图片描述
注:矩形方法比较特殊,不同于其它路径画法,不需要beginPath与closePath

<script type="text/javascript">
var c=document.getElementById("myCanvas");
var context=c.getContext("2d");
context.fillStyle="#f00";
context.fillRect(50,50,100,50);
context.fill();
</script>

圆的绘制

<canvas id="myCanvas" width="300" height="150" style="border:1px solid #ccc;">
<!--绘图代码-->
</canvas>
<script type="text/javascript">
var c=document.getElementById("myCanvas");
var context=c.getContext("2d");
context.filStyle="#f00";
context.beginPath();
context.arc(100,75,50,0,Math.PI*2,true);
context.closePath();
context.fill();
</script>

画圆语法:
Content.arc(x,y,半径,起始角度,结束角度,顺true/逆flase时针);

文本属性和方法

在这里插入图片描述

//写字
   cxt.beginPath()
	cxt.fillStyle="red";
	cxt.font="40px 黑体";
	cxt.fillText("hi 你好 欢迎你",x,y);
	cxt.closePath();
	//空心字
	 cxt.beginPath()
	cxt.strokeStyle="green";
	cxt.lineWidth=1;
	cxt.strokeText("hi 你好 欢迎你",x,y);
	cxt.closePath();

图像绘制方法

在这里插入图片描述

var pic=new Image();//实例化图形对象
pic.src="images/pic.jpg";//引入图形对象
//画图 drawImage(pic,x,y,w,h)
cxt.drawImage(pic,0,0,200,200);

注: Webkit系列的浏览器(chrome safari)不支持drawImage方法

三角形绘制方法

cxt.beginPath();
context.moveTo(25,25)//移动至开始点
cxt.lineTo(300,600);
cxt.lineTo(400,550);
cxt.closePath();//三角形需要先关闭路径再画
cxt.stroke();

转换方法

在这里插入图片描述

在异次元旋转图像的方法与步骤

//设置旋转环境
	cxt.save();
	//在异次元空间重置0,0点的位置
	cxt.translate(20,20);//待旋转对象的初始点坐标
	//图片/形状旋转
	//设置旋转度数  参数是弧度  角度 0-360 弧度=角度*Math.PI/180
	cxt.rotate(-30*Math.PI/180);
	旋转一个线段
	cxt.lineWidth=10;
	cxt.beginPath();
	cxt.moveTo(0,0);
	cxt.lineTo(20,100);
	cxt.stroke();
	cxt.closePath();
	cxt.restore(); 	//将旋转之后的元素放回原画布

	//过程不可颠倒 先设置0,0点在旋转角度,然后画图

像素操作方法和属性

在这里插入图片描述

Canvas的API

图像合成属性
在这里插入图片描述

其他方法

在这里插入图片描述

Canvas简单的实战操作

1、画一条线段
2、画一个圆形
3、画一个矩形
4、写一段文字画布中
5、将一幅图片添加到画布中
6、反转图片

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-02-24 15:11:47  更:2022-02-24 15:12:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:55:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码