标签:mdk mit cli ipc dff vmw via nat css
1 <body> 2 <div> 3 <header> 4 <h1>index</h1> 5 </header> 6 <nav> 7 <p><a href="/">Home</a></p> 8 <p><a href="/contact">Contact</a></p> 9 </nav> 10 11 <div> 12 <canvas id="game"></canvas> 13 </div> 14 15 <footer> 16 <p>© Copyright by Administrator</p> 17 </footer> 18 </div> 19 </body>
1 <!DOCTYPE HTML>
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <title>无标题文档</title>
6 <style>
7 #game {
8 background-color:#ccc;
9 border-radius:10px;
10 -moz-border-radius:10px;
11 -webkit-border-radius:10px;
12 width:500px;
13 height:500px;
14 margin:0 auto
15 }
16 </style>
17 </head>
18
19 <body>
20 <canvas id="game"></canvas>
21 <canvas id="game"></canvas>
22 </body>
23 </html>
1 <head> 2 <!--[if IE]><script src="excanvas.js"></script><![endif]--> 3 </head>
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
6 <title>未命名文件</title>
7 <script>
8 function drawDiagonal() {
9 var canvas = document.getElementById(‘diagonal‘);
10 var context = canvas.getContext(‘2d‘);
11 // 保存当前绘图状态
12 context.save();
13 // 向右下方移动绘图上下文
14 context.translate(70, 140);
15 // 以原点为起点,绘制与前面相同的线段
16 context.beginPath();
17 context.moveTo(0, 0);
18 context.lineTo(70, -70);
19 context.stroke();
20 // 恢复原有的绘图状态
21 context.restore();
22 }
23 window.addEventListener("load", drawDiagonal, true); </script>
24 </head>
25
26 <body>
27 <canvas id="diagonal" width="200" height="200"> </canvas>
28 </body>
29 </html>
30 </body>
31 </html>
1 // 加宽线条 2 context.lineWidth = 4; 3 // 平滑路径的接合点 4 context.lineJoin = ‘round‘; 5 // 将颜色改成棕色 6 context.strokeStyle = ‘#663300‘; 7 // 最后,绘制树冠 8 context.stroke();
也可以把lineJoin属性设置成bevel或者miter(相应的context.miterLimit值也需要调整)来变换拐角样式。
lineCap,可以把它的值设置为butt、square或者round,以此来指定线条末端的样式。 1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
6 <title>未命名文件</title>
7 <script>
8 function drawDiagonal() {
9 var canvas = document.getElementById(‘diagonal‘);
10 var context = canvas.getContext(‘2d‘);
11 // 保存canvas的状态并绘制路径
12 context.save();
13 context.translate(100,100);
14 context.beginPath();
15 // 第一条曲线向右上方弯曲
16 context.moveTo(0, 0);
17 context.quadraticCurveTo(170, -50, 260, -190);
18 // 第二条曲线向右下方弯曲
19 context.quadraticCurveTo(310, -250, 410,-250);
20 // 使用棕色的粗线条来绘制路径
21 //context.lineTo(100,100);
22 context.strokeStyle = ‘#663300‘;
23 context.lineWidth = 3;
24 context.stroke();
25 // 恢复之前的canvas状态
26 context.restore();
27 }
28 window.addEventListener("load", drawDiagonal, true); </script>
29 </head>
30
31 <body>
32 <canvas id="diagonal" width="200" height="200"> </canvas>
33 </body>
34 </html>
35 </body>
36 </html>
第二组是指曲线的终点。第一组代表控制点(control point)。所谓的控制点位于曲线的旁边(不是曲线之上),其作用相当于对曲线产生一个拉力。通过调整控制点的位置,就可以改变曲线的曲率。HTML5 Canvas API的其他曲线功能还涉及bezierCurveTo、arcTo和arc函数。这些函数通过多种控制点(如半径、角度等)让曲线更具可塑性。
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>未命名文件</title>
6 <style>
7 #diagonal {
8 background-color:#ccc
9 }
10 </style>
11 <script>
12 window.onload=function(){
13 var canvas = document.getElementById(‘diagonal‘);
14 var context = canvas.getContext(‘2d‘);
15 // 加载图片bark.jpg
16 var bark = new Image();
17 bark.src = "http://www.jsdarkhorse.com/templets/default/images/logo.jpg";
18 // 图片加载完成后,将其显示在canvas上
19 bark.onload=function(){
20 context.drawImage(bark, 5, 50, 100, 50);
21 }
22 }
23 </script>
24 </head>
25
26 <body>
27 <canvas id="diagonal" width="200" height="200"> </canvas>
28 </body>
29 </html>

从上面的代码中可以看到,我们为bark.jpg图片添加了onload处理函数,以保证仅在图像加载完成。除了图片本身外,还指定了x、y、width和height参数。这些参数会对贴图进行调整。我们还可以把原图的尺寸传进来,以便在裁切区域内对图片进行更多控制。
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>未命名文件</title>
6 <style>
7 #diagonal {
8 background-color:#ccc
9 }
10 </style>
11 <script>
12 window.onload=function(){
13 var canvas = document.getElementById(‘diagonal‘);
14 var context = canvas.getContext(‘2d‘);
15 context.translate(100,100);
16 // 创建用作树干纹理的三阶水平渐变
17 var trunkGradient = context.createLinearGradient(-5, -50, 50, -50);
18 // 树干的左侧边缘是一般程度的棕色
19 trunkGradient.addColorStop(0, ‘#663300‘);
20 // 树干中间偏左的位置颜色要淡一些
21 trunkGradient.addColorStop(0.4, ‘#996600‘);
22 // 树干右侧边缘的颜色要深一些
23 trunkGradient.addColorStop(1, ‘#552200‘);
24 // 使用渐变色填充树干
25 context.fillStyle = trunkGradient;
26 context.fillRect(-5, -50, 50, 100);
27 // 接下来,创建垂直渐变,以用作树冠在树干上投影
28 var canopyShadow = context.createLinearGradient(0, -50, 50, 100);
29 // 投影渐变的起点是透明度设为50%的黑色
30 canopyShadow.addColorStop(0, ‘rgba(0, 0, 0, 0.5)‘);
31 // 方向垂直向下,渐变色在很短的距离内迅速渐变至完全透明,这段长度之外的树干上没有投影
32 canopyShadow.addColorStop(0.2, ‘rgba(0, 0, 0, 0.0)‘);
33 // 在树干上填充投影渐变
34 context.fillStyle = canopyShadow;
35 context.fillRect(-5, -50, 50, 100);
36 }
37 </script>
38 </head>
39
40 <body>
41 <canvas id="diagonal" width="200" height="200"> </canvas>
42 </body>
43 </html>
createRadialGradient(x0, y0, r0, x1, y1, r1)
代码中,前三个参数代表以(x0,y0)为圆心,r0为半径的圆,后三个参数代表以(x1,y1)为圆心,r1为半径的另一个圆。渐变会在两个圆中间的区域出现。
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>未命名文件</title>
6 <style>
7 #diagonal {
8 background:#ccc
9 }
10 </style>
11 <script>
12 window.onload=function(){
13 var canvas = document.getElementById(‘diagonal‘);
14 var context = canvas.getContext(‘2d‘);
15 // 加载图片bark.jpg
16 var bark = new Image();
17 bark.src = "http://www.jsdarkhorse.com/templets/default/images/logo.jpg";
18 // 图片加载完成后,将其显示在canvas上
19 bark.onload=function(){
20 context.fillStyle = context.createPattern(bark, ‘repeat‘);
21 context.fillRect(5, 50, 100, 200);
22 }
23 }
24 </script>
25 </head>
26
27 <body>
28 <canvas id="diagonal" width="200" height="200"> </canvas>
29 </body>
30 </html>
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>未命名文件</title>
6 <style>
7 #diagonal {
8 background-color:#ccc
9 }
10 </style>
11 <script>
12 window.onload=function(){
13 function drawTree(context) {
14 // 创建用作树干纹理的三阶水平渐变
15 var trunkGradient = context.createLinearGradient(-5, -50, 50, -50);
16 // 树干的左侧边缘是一般程度的棕色
17 trunkGradient.addColorStop(0, ‘#663300‘);
18 // 树干中间偏左的位置颜色要淡一些
19 trunkGradient.addColorStop(0.4, ‘#996600‘);
20 // 树干右侧边缘的颜色要深一些
21 trunkGradient.addColorStop(1, ‘#552200‘);
22 // 使用渐变色填充树干
23 context.fillStyle = trunkGradient;
24 context.fillRect(-5, -50, 50, 100);
25 // 接下来,创建垂直渐变,以用作树冠在树干上投影
26 var canopyShadow = context.createLinearGradient(0, -50, 50, 100);
27 // 投影渐变的起点是透明度设为50%的黑色
28 canopyShadow.addColorStop(0, ‘rgba(0, 0, 0, 0.5)‘);
29 // 方向垂直向下,渐变色在很短的距离内迅速渐变至完全透明,这段长度之外的树干上没有投影
30 canopyShadow.addColorStop(0.2, ‘rgba(0, 0, 0, 0.0)‘);
31 // 在树干上填充投影渐变
32 context.fillStyle = canopyShadow;
33 context.fillRect(-5, -50, 50, 100);
34 /*createCanopyPath(context);
35 context.lineWidth = 4;
36 context.lineJoin = ‘round‘;
37 context.strokeStyle = ‘#663300‘;
38 context.stroke();
39 context.fillStyle = ‘#339900‘;
40 context.fill(); */
41 }
42 var canvas = document.getElementById(‘diagonal‘);
43 var context = canvas.getContext(‘2d‘);
44 // 在(50,50)的位置绘制第一棵树
45 context.save();
46 context.translate(30, 30);
47 drawTree(context);
48 context.restore();
49 // 在(100,100)的位置绘制第二棵树
50 context.save();
51 context.translate(100, 100);
52 // 将第二棵树的宽高分别放大至原来的2倍
53 context.scale(2, 2);
54 drawTree(context);
55 context.restore();
56 }
57 </script>
58 </head>
59
60 <body>
61 <canvas id="diagonal" width="200" height="200"> </canvas>
62 </body>
63 </html>
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>未命名文件</title>
6 <style>
7 #diagonal {
8 background-color:#ccc
9 }
10 </style>
11 <script>
12 window.onload=function(){
13 function drawTree(context) {
14 // 创建用作树干纹理的三阶水平渐变
15 var trunkGradient = context.createLinearGradient(-5, -50, 50, -50);
16 // 树干的左侧边缘是一般程度的棕色
17 trunkGradient.addColorStop(0, ‘#663300‘);
18 // 树干中间偏左的位置颜色要淡一些
19 trunkGradient.addColorStop(0.4, ‘#996600‘);
20 // 树干右侧边缘的颜色要深一些
21 trunkGradient.addColorStop(1, ‘#552200‘);
22 // 使用渐变色填充树干
23 context.fillStyle = trunkGradient;
24 context.fillRect(-5, -50, 50, 100);
25 // 接下来,创建垂直渐变,以用作树冠在树干上投影
26 var canopyShadow = context.createLinearGradient(0, -50, 50, 100);
27 // 投影渐变的起点是透明度设为50%的黑色
28 canopyShadow.addColorStop(0, ‘rgba(0, 0, 0, 0.5)‘);
29 // 方向垂直向下,渐变色在很短的距离内迅速渐变至完全透明,这段长度之外的树干上没有投影
30 canopyShadow.addColorStop(0.2, ‘rgba(0, 0, 0, 0.0)‘);
31 // 在树干上填充投影渐变
32 context.fillStyle = canopyShadow;
33 context.fillRect(-5, -50, 50, 100);
34 }
35 var canvas = document.getElementById(‘diagonal‘);
36 var context = canvas.getContext(‘2d‘);
37 // 在(50,50)的位置绘制第一棵树
38 context.save();
39 context.translate(100,100);
40 drawTree(context);
41 // 从整体上前四个参数负责缩放和旋转,后两个参数是平移,前四个参数1,4为一组控制缩放,2,3为一组控制旋转,1和2是x值,3和4是y值,5和6分别为x,y的平移
42 context.transform(1, 0, -1, 1, 55, 0);
43 // 使用透明度为20%的黑色填充树干
44 context.fillStyle = ‘rgba(0, 0, 0, 0.2)‘;
45 context.fillRect(-5, -50, 50, 100);
46 // 使用已有的阴影效果重新绘制树
47 context.fill();
48 // 恢复之前的canvas状态
49 context.restore();
50 }
51 </script>
52 </head>
53
54 <body>
55 <canvas id="diagonal" width="500" height="500"> </canvas>
56 </body>
57 </html>
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>未命名文件</title>
6 <style>
7 #diagonal {
8 background-color:#ccc
9 }
10 </style>
11 <script>
12 window.onload=function(){
13 var canvas = document.getElementById(‘diagonal‘);
14 var context = canvas.getContext(‘2d‘);
15 // 字号为60px,字体为impact
16 context.font = "60px impact";
17 // 将文本填充为棕色
18 context.fillStyle = ‘#996600‘;
19 // 将文本设为居中对齐
20 context.textAlign = ‘center‘;
21 context.textBaseline=‘middle‘;
22 // 在canvas顶部中央的位置,以大字体的形式显示文本
23 context.fillText(‘Hello Jsdarkhorse!‘, 250, 250, 400);
24 context.restore();
25 }
26 </script>
27 </head>
28
29 <body>
30 <canvas id="diagonal" width="500" height="500"> </canvas>
31 </body>
32 </html>
1 <!DOCTYPE HTML>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>未命名文件</title>
6 <style>
7 #diagonal {
8 background-color:#ccc
9 }
10 </style>
11 <script>
12 window.onload=function(){
13 var canvas = document.getElementById(‘diagonal‘);
14 var context = canvas.getContext(‘2d‘);
15 // 设置文字阴影的颜色为黑色,透明度为20%
16 context.shadowColor = ‘rgba(0, 0, 0, 0.2)‘;
17 // 将阴影向右移动15px,向上移动10px
18 context.shadowOffsetX = 15;
19 context.shadowOffsetY = -10;
20 // 轻微模糊阴影
21 context.shadowBlur = 2;
22 // 字号为60px,字体为impact
23 context.font = "60px impact";
24 // 将文本填充为棕色
25 context.fillStyle = ‘#996600‘;
26 // 将文本设为居中对齐
27 context.textAlign = ‘center‘;
28 context.textBaseline=‘middle‘;
29 // 在canvas顶部中央的位置,以大字体的形式显示文本
30 context.fillText(‘Hello Jsdarkhorse!‘, 250, 250, 400);
31 context.restore();
32 }
33 </script>
34 </head>
35
36 <body>
37 <canvas id="diagonal" width="500" height="500"> </canvas>
38 </body>
39 </html>
标签:mdk mit cli ipc dff vmw via nat css
原文地址:http://www.cnblogs.com/hoobey/p/6892498.html