《HTML5 CANVAS开发详解 WEB前端开发精品课》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:莫振杰著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2017
  • ISBN:9787115450203
  • 页数:340 页
图书介绍:全书共分为2大部分,第一部分是Canvas入门知识,主要学习Canvas的基本语法,包括图形绘制、变形操作、像素操作等。第二部分是Canvas进阶知识,主要学习Canvas的高级开发,包括事件操作、物理动画、碰撞检测等。除了知识讲解,教程还融入了大量的开发技巧,并且更加注重编程思维的培养,使得学习者能有顺畅的学习思路,这一点是极其重要的。

第一部分Canvas基础 1

第1章Canvas概述 1

1.1 Canvas简介 1

1.1.1 Canvas是什么 1

1.1.2 Canvas与SVG 2

1.2 Canvas元素知识 3

1.2.1 Canvas元素 4

1.2.2 Canvas对象 5

第2章直线图形 8

2.1直线图形简介 8

2.2直线 8

2.2.1 Canvas坐标系 8

2.2.2直线的绘制 9

2.3矩形 14

2.3.1“描边”矩形 15

2.3.2“填充”矩形 17

2.3.3 rect()方法 20

2.3.4清空矩形 22

2.4多边形 25

2.4.1 Canvas绘制箭头 25

2.4.2 Canvas绘制正多边形 26

2.4.3五角星 29

2.5训练题:绘制调色板 31

第3章 曲线图形 34

3.1曲线图形简介 34

3.2圆形简介 34

3.2.1圆形 34

3.2.2“描边”圆 35

3.2.3“填充”圆 38

3.3弧线 39

3.3.1 arc()画弧线 39

3.3.2 arcTo()画弧线 42

3.4二次贝塞尔曲线 47

3.5三次贝塞尔曲线 50

3.6训练题:绘制扇形 53

第4章 线条操作 57

4.1线条操作 57

4.2 IineWidth属性 58

4.3 IineCap属性 60

4.4 IineJoin属性 63

4.5 setLineDash()方法 65

第5章 文本操作 67

5.1文本操作简介 67

5.2文本操作“方法” 68

5.2.1 strokeText()方法 68

5.2.2 fillText()方法 69

5.2.3 measureText()方法 71

5.3文本操作“属性” 73

5.3.1 font属性 73

5.3.2 textAlign属性 74

5.3.3 textBaseline属性 76

第6章 图片操作 79

6.1图片操作简介 79

6.2绘制图片 79

6.2.1 drawlmage(image,dx,dy) 80

6.2.2 drawlmage(image,dx,dy,dw,dh) 83

6.2.3 drawlmage(image,sx,sy,sw,sh, dx,dy,dw,dh) 84

6.3平铺图片 86

6.4切割图片 89

6.5深入图片操作 92

第7章 变形操作 95

7.1变形操作简介 95

7.2图形平移 96

7.2.1 translate()方法 96

7.2.2 clearRect()方法清空Canvas 99

7.3图形缩放 100

7.3.1 scale()方法 100

7.3.2 scale()方法的负作用 103

7.4图形旋转 105

7.4.1 rotate()方法 105

7.4.2改变旋转中心 108

7.5变换矩阵 109

7.5.1 transform()方法 109

7.5.2 setTransform()方法 114

7.6深入变形操作 116

7.7训练题:绘制绚丽的图形 117

7.8训练题:绘制彩虹 119

第8章 像素操作 121

8.1像素操作简介 121

8.1.1 getlmageData()方法 121

8.1.2 putlmageData()方法 122

8.2反转效果 123

8.3黑白效果 126

8.4亮度效果 130

8.5复古效果 131

8.6红色蒙版 133

8.7透明处理 136

8.8 createlmageData()方法 137

第9章 渐变与阴影 141

9.1线性渐变 141

9.2径向渐变 145

9.3阴影 150

第10章Canvas路径 156

10.1路径简介 156

10.2 beginPath()方法和closePath()方法 156

10.2.1 beginPath()方法 157

10.2.2 closePath()方法 160

10.3 isPointlnPath()方法 165

第11章Canvas状态 168

11.1状态简介 168

11.2 clip()方法 168

11.3 save()方法和restore()方法 171

11.3.1图形或图片剪切 172

11.3.2图形或图片变形 174

11.3.3状态属性的改变 176

第12章 其他应用 178

12.1 Canvas对象 178

12.1.1 Canvas对象属性 178

12.1.2 Canvas对象方法 180

12.2 globalAlpha属性 182

12.3 globalCompositeOperation属性 183

12.4 stroke()和fill() 187

第二部分Canvas进阶 191

第13章 事件操作 191

13.1 Canvas动画简介 191

13.2鼠标事件 192

13.2.1什么是鼠标事件 192

13.2.2获取鼠标位置 192

13.3键盘事件 195

13.3.1什么是键盘事件 195

13.3.2获取物体移动方向 195

13.4循环事件 199

第14章 物理动画 202

14.1物理动画简介 202

14.2三角函数简介 203

14.2.1什么是三角函数 203

14.2.2 Math.atan()与Math.atan2() 204

14.3三角函数应用 210

14.3.1两点间的距离 210

14.3.2圆周运动 212

14.3.3波形运动 217

14.4匀速运动 222

14.4.1什么是匀速运动 222

14.4.2速度的合成和分解 224

14.5加速运动 227

14.5.1什么是加速运动 227

14.5.2加速度的合成和分解 231

14.6重力 233

14.6.1什么是重力 233

14.6.2重力的应用 235

14.7摩擦力 238

第15章 边界检测 241

15.1边界检测简介 241

15.2边界限制 242

15.3边界环绕 245

15.4边界生成 250

15.5边界反弹 256

第16章 碰撞检测 262

16.1碰撞检测简介 262

16.2外接矩形判定法 262

16.3外接圆判定法 271

16.4多物体碰撞 275

16.4.1排列组合 275

16.4.2多物体碰撞 275

第17章 用户交互 283

17.1用户交互简介 283

17.2捕获物体 284

17.2.1什么是捕获物体 284

17.2.2捕获静止物体 285

17.2.3捕获运动物体 287

17.3拖拽物体 291

17.4抛掷物体 297

第18章 高级动画 306

18.1高级动画简介 306

18.2缓动动画简介 306

18.3缓动动画应用 313

18.4弹性动画简介 317

18.5弹性动画应用 323

第19章Canvas游戏开发 327

19.1 Canvas游戏开发简介 327

19.2 Box2D简介 328

19.2.1 Box2D 328

19.2.2 Box2DWeb 328

19.3 HTML5游戏引擎 331

第20章Canvas图表库 334

20.1 Canvas图表库简介 334

20.2 ECharts和HightCharts 336