-
Notifications
You must be signed in to change notification settings - Fork 0
/
1.基本用法和导出图像.html
87 lines (76 loc) · 2.94 KB
/
1.基本用法和导出图像.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<style type="text/css">
#canvas01{
border:1px solid black;
}
#kno{
width: 500px;
height: auto;
float: left;
font-size: 18px;
}
</style>
<script type="text/javascript">
window.onload=function(){
//获取元素
var canvas01=document.getElementById("canvas01");
//确定浏览器支持<canvas>元素
if(canvas01.getContext){
//取得上2d下文:getContext方法
var context=canvas01.getContext("2d");
//下面是个简单的时钟例子 start
//开始路径
context.beginPath();
//绘制外圆
context.arc(100,100,99,0,2*Math.PI,false);
//绘制内圆
context.moveTo(194,100); //不理解这里???
context.arc(100,100,94,0,2*Math.PI,false);
//绘制分针
context.moveTo(100,100);
context.lineTo(100,15);
//绘制时针
context.moveTo(100,100);
context.lineTo(35,100);
//描边路径
context.stroke();
//填充颜色
//context.fill();
//时钟例子结束 over
//获取图像的数据uri:toDataURL方法传入的是图像的MIME类型格式,可用于导出在canvas元素上绘制的图像
var imgURI=canvas01.toDataURL("image/png");
//显示图像
var image=document.createElement("img");
image.src=imgURI;
document.body.appendChild(image);
//填充和描边的对应方法分别是:fillStyle、strokeStyle[得配合后面学习的方法来用]
// context.strokeStyle="red";
// context.fillStyle="#0000ff";
}
}
</script>
<body>
<!-- 问题1:发现canvas标签的width和height属性在css加的话,画面就会被拉长,而在标签加就不会。 -->
<canvas id="canvas01" width="200px" height="200px"></canvas>
<!-- 知识点和问题汇总 -->
<div id="kno">
<b>知识点:</b> <br/>
<strong>1.</strong> 使用canvas元素 <br/>
<strong>2.</strong> 确定浏览器支持<canvas>元素 <br/>
<strong>3.</strong> 取得上2d下文:getContext方法 <br/>
<strong>4.</strong>获取图像的数据uri:toDataURL方法传入的是图像的MIME类型格式,可用于导出在canvas元素上绘制的图像 <br/>
<strong>5.</strong>填充和描边的对应方法分别是:fillStyle、strokeStyle
<br/>
<br/>
<b>问题:</b> <br/>
发现canvas标签的width和height属性在css加的话,画面就会被拉长,而在标签加就不会。
</div>
<!-- 说明导出的文件的位置 -->
<span>导出的图片:</span>
</body>
</html>